合并分支

分支的合并主要分以下两种情况

情形一

dev分支一开始是从master分支的某个提交点创建出来的,而后dev分支的代码做了修改与提交,但master分支自创建dev分支后一直没有修改,如图所示

此时,把dev分支合并到master分支比较简单,流程为

1、dev分支提交修改 2、切换到master分支 3、把dev分支合并到master分支

$ git checkout master
$ git merge dev

合并之后,master分支和dev分支都指向了最后一个提交点

情形二

dev分支从master分支创建出来后,两个分支都做了修改和提交,如下图所示

此时把dev分支合并到master分支会冲突

pshizh@peng MINGW64 /e/gitRoot/learngit (master)
$ git merge dev
Auto-merging readme.txt
CONFLICT (content): Merge conflict in readme.txt
Automatic merge failed; fix conflicts and then commit the result.

不过没关系,此时手动修复冲突,然后继续提交

pshizh@peng MINGW64 /e/gitRoot/learngit (master|MERGING)
$ git add *

pshizh@peng MINGW64 /e/gitRoot/learngit (master|MERGING)
$ git commit -m "fix confiction"
[master 5858738] fix confiction

提交之后,dev分支仍然停留在原来的提交点,master分支多了一次提交。状态如下图

如果这时要使dev分支和master分支保持一致,那么可以先删除dev分支,然后再从master分支创建dev分支

Last updated