第一次用Git协作流程记录和踩坑

  • Git安装和设置(略)
  • 把Github账号邮箱发给负责人,负责人邀请进入仓库
  • 仓库分支结构
    • main: 生产分支(受保护)
    • dev: 开发分支
    • 其他分支
  • 克隆仓库
复制代码
  git clone <仓库地址>
  • 查看所有分支
    *

    复制代码
      git branch

    *代表当前所在分支

  • 建立dev子分支
    *

    复制代码
      #确保在dev分支
      git checkout dev
    
      #创建功能分支
      git checkout -b new_branch
    
      #  验证
      git branch
      # 应该显示:
      # * new_branch
      #   dev
      #   main
  • 在子分支下修改代码并跑通(2000 yrs later)

  • 暂存修改
    *

    复制代码
      #暂存所有修改
      git add . 
    
      #暂存某个文件
      git add <文件名> 
    
      #查看当前状态
      git status
  • 提交修改(这一步不会影响远程仓库)

    复制代码
      git commit -m"修改信息"
  • 拉取远程仓库和merge

    先获取远程最新信息(git fetch只会拉取,不会合并)

    git fetch origin

    查看远程dev有而你没有的提交

    git log --oneline origin/dev..HEAD

    查看你有而远程dev没有的提交

    git log --oneline HEAD..origin/dev

    #merge 远程
    git merge origin/dev

  • 解决冲突(如果有)

    • 打开冲突文件,查找 <<<<<<< 标记
      • 示例:

        <<<<<<< HEAD
        你的代码

        别人的代码
        >>>>>>> origin/dev
    • 修改代码冲突的地方,删除冲突标记,保留正确代码
    • 解决后,重新添加冲突文件
    复制代码
      git add <文件名>
    • 再次提交
      *

      复制代码
        git commit -m"已经解决冲突"
    • 再次同步

    复制代码
      #再次同步
      git fetch origin
      git merge origin/dev
    • 确认没有问题后推送到远程仓库

      #如果之前没推送过new_branch分支分支
      git push -u origin new_branch

      -u 表示设置上游分支,以后只需要 git push

      #如果之前推送过
      git push origin new_branch

      或简写

      git push

然后登录Github切换到你创建的分支,在页面上面可以看见一个Compare & pull request的按钮

点击然后填写Pull Request的标题和描述,然后点击Create Pull Request就可以了。

我没截到图,Pull Request的提交可以参考【GitHub】如何在github上提交PR(Pull Request) + 多个pr同时提交、互不干扰-阿里云开发者社区

相关推荐
一颗小行星!1 小时前
快速理解 Git submodule
git
A-Jie-Y4 小时前
Git基础-核心概念与常用命令
git
夜珀4 小时前
Git基础修炼手册:在AtomGit上玩转版本控制
git
golang学习记4 小时前
Zed IDE官宣新招:Git Graph 正式支持!
ide·git
要记得喝水5 小时前
适用于 Git Bash 的脚本,批量提交和推送多个仓库的修改
git·elasticsearch·bash
AI_Claude_code5 小时前
专栏导论:开源项目贡献的价值与Git工作流全景图
git·开源
never forget shyang5 小时前
CCS20.2.0使用教程
c语言·git·单片机
lifewange14 小时前
常用的Git命令有哪些?
git
无限进步_15 小时前
【C++】电话号码的字母组合:从有限处理到通用解法
开发语言·c++·ide·windows·git·github·visual studio
C++ 老炮儿的技术栈15 小时前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt