1
爲了確保我們使用的一些文件的主幹版本合併we useinternal:local
時:Mercurial - 內部:本地合併模式的例外情況?
[merge-patterns]
.hgtags = internal:local
pom.xml = internal:local
似乎在某些情況下,合併不使用本地文件,但它實際上是合併來自遠程倉庫的變化。爲什麼會發生這種情況?
爲了確保我們使用的一些文件的主幹版本合併we useinternal:local
時:Mercurial - 內部:本地合併模式的例外情況?
[merge-patterns]
.hgtags = internal:local
pom.xml = internal:local
似乎在某些情況下,合併不使用本地文件,但它實際上是合併來自遠程倉庫的變化。爲什麼會發生這種情況?
即使啓動合併工具,Mercurial「premerge」內部合併實際上也成功解決了某些文件的合併衝突。
如果選擇的合併工具premerge是 True,那麼內部的合併是 嘗試,如果有什麼成功 那麼結果就會悄無聲息是沒有運行的實際合併 工具使用
關於合併工具配置的更多信息,請參閱this article。關閉premerge特定類型的文件(或目錄)可以使用這些修改您的Mercurial.ini文件來完成:
[merge-tools]
<name>.premerge = False
<name>.args = --auto $base $other $other -o $output
<name>.executable = kdiff3
[merge-patterns]
**.xml = <name>
.hgtags = <name>
注意kdiff3應該默認配備TortoiseHg和<name>
可以是任何你想要;稱之爲'localFilesOnly'或類似的東西。
謝謝 - 你有一個配置示例嗎?不完全確定如何設置此配置.. – 2011-04-14 02:00:23
@Marcus - 更新以包含一個示例。你將不得不爲你自己的文件調整'[merge-patterns]'部分。 – dls 2011-04-14 14:56:52
這對於跳過premerge是有意義的,但是如何跳過premerge並告訴mercurial如果它們是差異使用本地文件? – 2011-04-14 18:38:42