Использование Beyond Compare для визуального сравнения в TortoiseHg

Я пытаюсь использовать Beyond Compare для Visual Diff в TortoiseHg. Например, щелкните правой кнопкой мыши измененный файл в проводнике и выберите Visual Diff из контекстного меню TortoiseHg...

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

person Geoff Appleford    schedule 11.05.2010    source источник
comment
Это работает из командной строки? В репозитории hg bcomp или hg bcomp -r rev1 -r rev2 file. Кроме того, BC3 поставляется в двух вариантах: Standard (в котором нет слияния) и Pro (в котором есть). Если вы используете Standard, попробуйте удалить разделы [merge-tools] и [ui].   -  person Niall C.    schedule 11.05.2010
comment
@ nc97217 Да, это работает из командной строки. Также я использую версию Pro   -  person Geoff Appleford    schedule 11.05.2010


Ответы (2)


Нашел ответ.

Для инструмента Visual Diff Tool в глобальных настройках TortoiseHg должно быть установлено значение «beyondcompare3» вместо «bcomp». '.

TortoiseHg и не только для сравнения

person Geoff Appleford    schedule 11.05.2010
comment
Знаете ли вы, должен ли инструмент трехстороннего слияния также быть установлен на Beyondcompare3? - person jpbochi; 01.06.2010
comment
кстати как ты это узнал? - person jpbochi; 01.06.2010
comment
@jpbochi - у меня установлено трехстороннее слияние bcomp, и, похоже, оно работает нормально. Я думаю, что это был просто метод проб и ошибок, хотя, возможно, я где-то прочитал что-то, что дало мне указание. - person Geoff Appleford; 01.06.2010
comment
Кто-нибудь знает настройку, чтобы это работало с BC версии 2? BeyondCompare2 не работает. - person JohnFx; 16.11.2010
comment
@JohnFx - в MergeTools.rc (см. мой ответ) также есть раздел Beyond Compare 2. Возможно, это может вам помочь. - person Ilia Barahovski; 14.08.2013

В нашем случае та же проблема возникла, когда мы добавили mercurial.ini к TortoiseHG. Похоже, что по умолчанию конфигурация исходит из папки TortoiseHG\hgrc.d. Конкретную конфигурацию инструментов сравнения и слияния можно найти в MergeTools.rc.

Просто для справки, вот как Beyond Compare 3 можно настроить вручную в mercurial.ini:

[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 должен быть перезапущен, чтобы применить этот параметр.

person Ilia Barahovski    schedule 14.08.2013