一、解决冲突
1、准备新的分支feature1,继续新分支开发

2、修改README.md最后一行,加个1

3、提交修改

4、切换到master分支,还提醒我们当前master分支比远程master分支还超前一个提交

5、在master分支上,把README.md最后一行加上一个3

6、在master分支上把修改提交

7、现在,master和feature1分支都各有新的提交,就成了下面这样。这种情况下,Git无法执行“快速合并”,只能试图把各自的修改合并起来,但这种合并就有可能冲突

8、将feature1的修改合并到master分支,发生了冲突,Git告诉我们README.md文件冲突,必须解决冲突后再提交。git status也可以告诉我们冲突文件


9、打开README.md文件,可以看到Git用如下标记标识出不同版本,修改成正确的结尾为123(2是之前feature1分支上我又执行了一次修改)

10、再提交,分支变成下图(注意:此时master分支文件结尾内容为123,feature还是12):

11、用
git log --graph --pretty=oneline --abbrev-commit命令查看分支合并情况

12、最后删除feature1分支

小结
当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
用git log --graph
命令可以看到分支合并图。