注:这篇文章已被作者标注为“糟糕的文章”,不建议参考和阅读
我们将在learngit文件夹中的readme.txt做测试
Git合并分支及解决冲突
readme.txt的原文本:
Git合并分支及解决冲突
创建以master为模板的issue-1分支,并切换到issue-1分支
Git合并分支及解决冲突
修改issue-1分支的readme.txt:(在第二句的a前加了一个双引号)
Git合并分支及解决冲突
提交issue-1分支的修改到本地库
Git合并分支及解决冲突
提交后切换回master分支
Git合并分支及解决冲突
这次我们在master分支的readme.txt文本中修改第二句,在a后面加一个双引号:
Git合并分支及解决冲突
提交修改后的master分支到本地库
Git合并分支及解决冲突
试图将issue-1分支合并到master分支,发生冲突:
Git合并分支及解决冲突
马上打开readme.txt查看(这个readme.txt是属于master分支的):
Git合并分支及解决冲突
尝试看完就关闭不管它, 再合并一次试试看:
Git合并分支及解决冲突
还是不行,比你还倔,我决定屈服,乖乖修改:(在a前后都加个双引号)
Git合并分支及解决冲突
看一下git status(状态):
Git合并分支及解决冲突
可以看到,修改了文本内容还没算解决冲突,要提交到本地库才算搞定。
Git合并分支及解决冲突
现在我们还处于master分支中(如果要把issue-1分支合并到master分支中,就要切换到master中执行git merge issue1;反之,如果要把master分支合并到issue-1分支,要切换到issue-1,执行git merge master,但我们不会这么做,因为master才是老大,通常只有它merge别人的份。),我们查看一下master分支的readme.txt:
Git合并分支及解决冲突
切换到issue-1分支查看readme.txt:
Git合并分支及解决冲突
Git合并分支及解决冲突
git merge操作对issue-1分支的世界没有影响,readme.txt还是它原先的样子。