Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mercurial 乌龟视觉差异的超越比较法_Mercurial_Tortoisehg_Beyondcompare3 - Fatal编程技术网

Mercurial 乌龟视觉差异的超越比较法

Mercurial 乌龟视觉差异的超越比较法,mercurial,tortoisehg,beyondcompare3,Mercurial,Tortoisehg,Beyondcompare3,我正在尝试使用超越比较的视觉差异在乌龟。例如,右键单击资源管理器中修改过的文件,然后从OrtoisehG上下文菜单中选择VisualDiff BeyondCompare将打开,但只显示“欢迎”屏幕,而不是我要区分的文件。我是否遗漏了什么 我已按如下方式设置mercurial.ini文件: [extensions] extdiff = [extdiff] cmd.bcomp = C:\Program Files (x86)\Beyond Compare 3\BCompare.ex

我正在尝试使用超越比较的视觉差异在乌龟。例如,右键单击资源管理器中修改过的文件,然后从OrtoisehG上下文菜单中选择VisualDiff

BeyondCompare将打开,但只显示“欢迎”屏幕,而不是我要区分的文件。我是否遗漏了什么

我已按如下方式设置mercurial.ini文件:

  [extensions]
  extdiff =

  [extdiff]
  cmd.bcomp = C:\Program Files (x86)\Beyond Compare 3\BCompare.exe
  opts.bcomp = /ro

  [tortoisehg]
  vdiff = bcomp

  [merge-tools]
  bcomp.executable = C:\Program Files (x86)\Beyond Compare 3\BComp
  bcomp.args = $local $other $base $output
  bcomp.priority = 1
  bcomp.premerge = True
  bcomp.gui = True

  [ui]
  merge = bcomp
找到了答案

陆龟全局设置中的视觉差异工具必须设置为“beyondcompare3”而不是“bcomp”


在我们的例子中,当我们将
mercurial.ini
添加到
TortoiseHG
时,同样的问题也发生了。默认情况下,它似乎来自
TortoiseHG\hgrc.d
文件夹。具体而言,可以在
MergeTools.rc
中找到diff和MergeTools配置

仅供参考,以下是如何在
mercurial.ini
中手动配置
Beyond Compare 3

[merge-tools]
bcomp.executable = C:\Program Files (x86)\Beyond Compare 3\BComp.exe
bcomp.priority = 1
bcomp.premerge = True
bcomp.gui = True

bcomp.args=$local $other $base /mergeoutput=$output /ro /lefttitle=parent1 /centertitle=base /righttitle=parent2 /outputtitle=merged /automerge /reviewconflicts /solo
bcomp.diffargs=/lro /lefttitle='$plabel1' /righttitle='$clabel' /solo /expandall $parent $child
bcomp.diff3args=$parent1 $parent2 $child /lefttitle='$plabel1' /centertitle='$clabel' /righttitle='$plabel2' /solo /ro
bcomp.dirdiff=True

请注意,无需启用
extdiff
扩展。此外,应重新启动TortoiseHG以应用此设置。

它是否可以从命令行运行?在存储库中,
hg bcomp
hg bcomp-r rev1-r rev2文件
。此外,BC3有两种版本:标准版(不具备合并功能)和专业版(具备合并功能)。如果您使用的是标准,请尝试删除[merge tools]和[ui]部分。@nc97217是的,它可以从命令行工作。另外,我正在使用Pro版本。你知道3路合并工具是否也必须设置为beyondcompare3吗?顺便问一下,你是如何发现的?@jpbochi-我将3路合并设置为bcomp,它似乎工作正常。我认为这只是尝试和错误,尽管我可能在某个地方读到了一些给我一个指针的东西。有人知道BC版本2的设置吗?“BeyondCompare2”不起作用。@JohnFx-in
MergeTools.rc
(参见我的答案)还有一节介绍BeyondCompare2。也许它能帮助你。