我试图通过git union merge来理解一个令人费解的行为.要重新启动,请从具有以下内容的hello.txt开始:
1
2
3
Run Code Online (Sandbox Code Playgroud)
在另一个提交中,添加一行,例如
1
2
new
3
Run Code Online (Sandbox Code Playgroud)
在foo原始提交的不同分支中,删除中间行:
1
3
Run Code Online (Sandbox Code Playgroud)
在这里,我希望合并不包含已删除的行,即使使用union merge也是如此.但是我看到它包含(git merge foo在主人身上跑完之后):
1
2
new
3
Run Code Online (Sandbox Code Playgroud)
所以它忽略了我的行删除.我只是误解了工会合并是如何运作的?样本回复:https://github.com/davidebbo/MergeTest
还有一点需要注意:如果不是删除第2行,而是删除第1行,那么合并会按预期发生,最后是:
2
new
3
Run Code Online (Sandbox Code Playgroud)
因此,奇怪的情况似乎只发生在会导致标准(非联合)合并下的冲突的场景中.
| 归档时间: |
|
| 查看次数: |
1364 次 |
| 最近记录: |