我发现了一个奇怪的问题。我正在测试一个git repo,发现出现了以下情况。
我创建了一个简单的git repo,并添加了一个包含以下内容的文本文件。
Hello Git..!
First Line
作为初始提交进行了提交。
然后我从该提交创建了一个名为“abc”的分支,并将文件的内容更改为以下内容。
(abc) -> 分支
Hello Git..!
First Line
Second Line
已提交。然后我切换回我的主分支并将文件内容更改如下。
(master) -> 分支
Hi Git..!
First Line
已提交。然后我尝试将“abc”分支合并到“master”分支。我认为这将会产生冲突,但它通过递归成功地合并到以下位置。
Hi Git..!
First Line
Second Line
为什么没有显示冲突?我尝试了几次,有时候如果像下面这样没有空行,就会出现这种情况。
Hello Git...!
First Line
如果显示冲突,那么就说明存在冲突。我不理解这个。请有人帮助我理解。
我尽可能地搜索了很多内容,但我找不到一个问题或答案来解决我的问题。
我已经将样例上传到GitHub。如果有人克隆它并尝试合并,就可以重现它。
https://github.com/Ranjith-Suranga/test-repo
有没有办法强制GIT显示冲突?我知道这是一个奇怪的问题,没有人需要出现冲突。但我也不喜欢这种情况发生。想象一下,这发生在我的真实代码中。
更新
由于大部分评论和答案都表示不可能出现这种冲突,所以我不得不更新这个答案。
好的,让我们再次执行上述所有步骤,删除第二个空行。
我们开始吧,
- 我创建了一个简单的git repo,并添加了一个文本文件,其内容如下。这次前两行之间没有空行。
Hello Git..!
First Line
作为初始提交进行了提交。
- 然后我从该提交创建了另一个名为“abc”的分支,并将文件的内容更改为下面的内容。(再次删除空行)
(abc) -> 分支
Hello Git..!
First Line
Second Line
已提交。
- 然后,我检出回到我的主分支,并将文件内容更改为以下内容。
(master) -> 分支
Hi Git..!
First Line
已提交。
- 然后我尝试将"abc"分支合并到"master"分支。这一次它会告诉我有合并冲突。
如果你不相信我,这是一个样例的Github库 https://github.com/Ranjith-Suranga/test-repo2
第一个没有任何冲突,第二个几乎相同,除了移除的空行,它会有冲突。 但问题是为什么?