我目前正在使用命令hg diffmerge -r 32 -r 30 myfile
,但这只显示两个窗口,而不是三个窗口。如何让它进行三向合并?
.hgrc
[ui]
merge=diffmerge
[extensions]
collapse=~/.hgext/collapse.py
hgext.purge=
hgext.extdiff=
hgext.graphlog=
[extdiff]
cmd.diffmerge=/usr/bin/diffmerge
[merge-tools]
diffmerge.executable=/usr/bin/diffmerge
diffmerge.args= --result=$output -t1="Local Version" -t2=$output -t3="Other Version" --caption=$output $local $base $other
diffmerge.binary=False
diffmerge.symlinks=False
diffmerge.gui=True
diffmerge.premerge=True
答案 0 :(得分:3)
我想你的意思是你使用SourceGear DiffMerge作为外部合并工具。你的.hgrc
是什么?它是基于sample from hg website吗?
我的猜测是你的diffmerge.args
有问题。您可以尝试使用这些参数手动运行diffmerge以确保它有效。
现在你的.hgrc
已经很清楚了。您的命令hg diffmerge -r 32 -r 30 myfile
不是合并命令,而是要求hg使用diffmerge作为外部差异工具(在[extdiff]
部分中指定)来比较版本32和30之间的myfile
。没有涉及第三版。
对于合并,您运行hg merge [-r<the other head>]
,并且由于您的.hgrc
告诉hg使用diffmerge作为合并工具(在[ui]
部分中指定),hg将使用diffmerge进行3向合并。我验证它在我的Windows设置中使用相同的hgrc。