2012-10-16 37 views
7

我的(大型)公司在其大部分源代碼管理中使用Perforce。 (我無法逃避這個。)使用P4Merge合併XML

一位同事和我經常必須同時在同一個基於XML的文件上工作。當需要合併我們的變更時,P4Merge往往不如我想要的那麼聰明。例如,考慮這個超級簡單的XML文件和兩個碰撞的變化:

Simple XML file and two variations with the same closing tag in the same place.

如圖所示,P4Merge不是XML感知,並保持只有一個共同的</b>副本。

您如何修改Perforce工具本身以支持更智能的XML合併,或者如何修改Perforce工具鏈以使用更智能的合併工具作爲解決過程的一部分?

+0

我甚至不知道這種XML感知合併工具存在。這似乎是合併衝突需要人力投入的原因之一。 (以及爲什麼你應該構建你的代碼來使相關的更改彼此接近。) – millimoose

+0

@millimoose FWIW,[some solutions](http://stackoverflow.com/questions/2222548/3-way-xml-merge-algorithm)似乎存在。是的;事實上文件格式目前在邏輯上將相互獨立的更改置於XML中,這也是我在內部解決的問題。 – Phrogz

回答

3

假設您使用的是P4V/P4Win,可以將默認差異和合並工具從Perforce工具更改爲您喜歡的工具。見this page from the P4V manual