当将一个git分支合并到另一个git分支时,合并冲突的常见来源是我的一个XML文件,其中在两个分支上的文件的同一插入点处添加了新的(但不同的)XML。在我的情况下,我希望git在合并结果中自动包含来自两个分支的新插入的XML,并且我不关心哪个分支的更改插入到另一个分支之上。
是否可以配置git来执行此操作?
编辑:我发现我可以放线:
*.xml merge=union
进入.gitattributes文件 - 但这并不像我想要的那样工作。
在我的工作分支上说,已添加此XML:
<itemlist id="1">
<item id="1"></item>
</itemlist>
然后在我打算合并到我的分支上,已添加 - 在完全相同的位置:
<itemlist id="2">
<item id="2"></item>
</itemlist>
然后,git注意到两组更改都以相同的文本结尾(即带有结束标记的行)。它似乎认为,因为双方都添加了相同的文本,它不应该在合并中复制该文本,因此它只会在合并期间插入以下内容:
<itemlist id="2">
<item id="2"></item>
当然会导致无效的XML。
我是否可以采取进一步的配置来关闭这个“仅仅合并 - 更改 - 那些不是也在改变工作分支”的选项吗?
答案 0 :(得分:-1)
git中没有像merge union这样的东西,那些日子你不想做的事情。
您只能从不同的策略中进行选择