使用P4Merge合并XML

使用P4Merge合并XML,xml,merge,perforce,Xml,Merge,Perforce,我的(大型)公司在大多数源代码控制中都使用Performance。(我无法逃避。) 我和一位同事经常需要同时处理同一个基于XML的文件。当需要合并我们的更改时,P4Merge通常不像我希望的那样聪明。例如,考虑这个超简单的XML文件和两个相互冲突的变化: 如图所示,P4Merge不支持XML,只保留公共的一个副本 您如何修改Perforce工具本身以支持更智能的XML合并,或者如何修改Perforce工具链以使用更智能的合并工具作为解决过程的一部分?假设您使用的是P4V/P4Win,您可以将默

我的(大型)公司在大多数源代码控制中都使用Performance。(我无法逃避。)

我和一位同事经常需要同时处理同一个基于XML的文件。当需要合并我们的更改时,P4Merge通常不像我希望的那样聪明。例如,考虑这个超简单的XML文件和两个相互冲突的变化:

如图所示,P4Merge不支持XML,只保留公共
的一个副本


您如何修改Perforce工具本身以支持更智能的XML合并,或者如何修改Perforce工具链以使用更智能的合并工具作为解决过程的一部分?

假设您使用的是P4V/P4Win,您可以将默认的diff和merge工具从Perforce工具更改为您喜欢的工具。请参阅。

有一个名为Project:Merge的工具,它可以更好地处理XML内容,并与Perforce:


更新:Project:Merge已重命名为Oso XML Merge,并在发表本文后进行了更新。可以找到最新版本。

您也可以将此升级为您希望看到的增强功能:

我甚至不确定是否存在这样一个支持XML的合并工具。这似乎是合并冲突需要人工输入的原因之一。(以及为什么你应该构建你的代码,使相关的更改彼此接近。)@millimoose FWIW,看起来确实存在。是的;文件格式当前在XML中把逻辑上独立的更改放在彼此相邻的位置,这一事实也是我在内部推动解决的问题。