问题描述
我修改了不同分支中的不同行,但是这些更改发生git merge
冲突。
我读过the post,但我认为这些变化发生在完全不同的行中。
这是我的测试代码。
分支基地
Hello,my first conflict.
Second line.a # add a single character 'a' at line 2
Third line.
branch-a
Hello,my first conflict.
Second line.
Third line.a # add a single character 'a' at line 3
我执行了以下代码,它说git merge冲突。
$ git checkout branch-base
$ git merge branch-a
这是我的冲突文件。
Hello,my first conflict.
<<<<<<< HEAD
Second line.a
Third line.
=======
Second line.
Third line.a
>>>>>>> branch-a
为什么会发生这种冲突?我想我以完全不同的方式进行了更改(尽管它们是相邻的。)
解决方法
至少必须有一条单独的分隔线保持相同,以便可以将它们分开对待,而不会产生冲突。假设它们之间没有被在所有3个修订版(两个提示和共同祖先)上都保持相同的行分隔,则将它们视为一个块。一个分支以一种方式修改该块,另一分支以另一种方式修改...因此,冲突。