Merge GNU diff3(三向合并)给出了意外的结果
假设我的和你的文件是旧文件的后代 档案室= abc def ghi diff3无法解决我的和你的更改相同的问题 为什么??还有,有没有办法解决这个问题 用这句话逗你的大脑发痒:Merge GNU diff3(三向合并)给出了意外的结果,merge,gnu,diff3,Merge,Gnu,Diff3,假设我的和你的文件是旧文件的后代 档案室= abc def ghi diff3无法解决我的和你的更改相同的问题 为什么??还有,有没有办法解决这个问题 用这句话逗你的大脑发痒: diff-OLD-MIND和diff-OLD-YOURS在输出中有相同的块头 2c2 < jkl --- > def 2c2 def 在三方合并过程中,这些大块头不应该“取消”吗?你希望得到什么 正如政府所说: 。。。当三个输入文件都不同时,此(合并)将不为真;当只有较旧的文件不同时,此(合并)将不为真;我们称之为
diff-OLD-MIND
和diff-OLD-YOURS
在输出中有相同的块头
2c2
< jkl
---
> def
2c2
在三方合并过程中,这些大块头不应该“取消”吗?你希望得到什么 正如政府所说: 。。。当三个输入文件都不同时,此(合并)将不为真;当只有较旧的文件不同时,此(合并)将不为真;我们称之为冲突。当三个输入文件都不同时,我们称冲突为重叠 因此,您描述的案例被视为冲突。”“为什么会这样?”你可能会问。因为diff3算法。说明您可以在同一页找到: 您可以将此(合并)视为从您的更改中减去较旧的更改,然后将结果添加到我的更改中,或者将会变旧的更改合并到我的更改中 它无法正确解决差异,因为它没有进行更改的适当上下文 如果你想说它应该使用其他方法工作,我会同意你的看法。但是事实就是这样。diff3并不完美,如果您想按照中的描述正确地完成它,我建议您使用其他工具 abc def ghi abc <<<<<<< OLD jkl ======= def >>>>>>> YOURS ghi 2c2 < jkl --- > def