Git分支管理策略

一、分支管理

  • 概念:每次提交,Git都把他们串成一条时间线,这条时间线就是一个分支。
  • 价值:多人协作,环境管理。
    2023-01-09-16-53-38-1

二、创建分支

2.1 创建分支,但仍然停留在当前分支:git branch 分支名

2.2 新建分支并直接切换至该分支:git checkout -b 分支名

三、查看分支

3.1 列出所有本地分支:git branch

3.2 列出所有远程分支:git branch -r

3.3 列出所有本地与远程分支:git branch -a

四、切换分支

五、删除分支

六、Git分支合并与冲突

6.1 分支合并应用场景

  • 合入主分支
  • 主分支合并其他分支:通常使用Merge Request的方式。
    image

6.2 合并分支

  • 合并指定分支到当前分支:git merge 其他分支 本分支
    image

示例1:




示例2:




  • 变基(重新设置基准): git rebase 其他分支
    image

示例:




6.3 冲突

  • 冲突定义:在并行工作的模式下,工作最终会发生重叠。当多个成员以不同的方式更改同一行内容时,Git无法判断哪个版本是正确的,就会产生冲突。

  • 冲突场景:

    • 多个分支代码合并到一个分支时;
    • 多个分支向同一个远端分支推送代码时。

示例:


$ git merge change_site
Auto-merging filename
CONFLICT (content): Merge conflict in filename
Automatic merge failed; fix conflicts and then commit the result.
  • 解决冲突
    • 解决冲突方式:

      • IDE中解决冲突:选择要保留的内容,点击Accept,保存代码。
      • 文件中解决冲突:保留需要的内容,删除其余内容,去掉分割线,保存代码。
    • 解决冲突流程:

  1. 在本地当前分支上,修改冲突内容;
  2. 执行git add . 添加到暂存区;
  3. 执行git commit -m “提交说明” 提交到本地仓库,完成合并;
  4. 执行git push提交到远程仓库。