Подтвердить что ты не робот

Использование меркуриального и вне сравнения 3 (bc3) в качестве инструмента сравнения? нужна помощь


в windows я могу использовать winmerge в качестве внешнего инструмента diff для hg, используя mercurial.ini и т.д.
Используя некоторые опции, которые вы можете найти в Интернете (я думаю, что это японский сайт) В любом случае, здесь например:

hg winmerge -r1 -r2

будет перечислять изменения файла (ов) между rev1 и rev2 в winmerge. Я могу просто щелкнуть, какой файл для diff

но для bc3:

hg bcomp -r1 -r2

сделает bc3 открытым диалоговое окно, в котором указано, что временный каталог не найден.

Самое большее, что я могу сделать с помощью bc3 и hg, это

 hg bcomp -r1 -r2 myfile.cpp 

который откроет diff между rev1 и rev2 файла myfile.cpp

Итак, кажется, что hg + bc3 не может успешно распознать все изменения файлов между версиями. Только возможность разделить 1 файл за раз.
Кто-нибудь может лучше использовать bc3 + hg?

edit: проблема решена!

Получено решение с http://www.scootersoftware.com/support.php?zz=kb_vcs.php > страницы поддержки wooter. Я должен использовать bcompare вместо bcomp Вот фрагмент моего mercurial.ini

[extensions]
hgext.win32text =

;mhd adds
hgext.extdiff = 

;mhd adds for bc
[extdiff]
cmd.bc3 = bcompare
opts.bc3 = /ro

;mhd adds for winmerge
;[extdiff]
;cmd.winmerge = WinMergeU
;opts.winmerge = /r /e /x /ub
4b9b3361

Ответ 1

Beyond-Compare-3 - удивительный инструмент. Я рекомендую несколько настроек настройки:

[extensions]
extdiff =

[extdiff]
cmd.bcomp = C:\Program Files\Beyond Compare 3\BCompare.exe
opts.bcomp = /leftreadonly

[merge-tools]
bcomp.executable = C:\Program Files\Beyond Compare 3\BComp
bcomp.args = /leftreadonly /centerreadonly $local $other $base $output
bcomp.priority = 1

[ui]
merge = bcomp

[tortoisehg]
authorcolor = True
vdiff = bcomp

Ответ 2

Лично я обнаружил, что лучший Beyond Compare config можно найти в файле Mercurial mergetools.rc file:

[merge-tools]
....
; Windows version of Beyond Compare
beyondcompare3.args=$local $other $base $output /ro /lefttitle=local /centertitle=base /righttitle=other /automerge /reviewconflicts /solo
beyondcompare3.regkey=Software\Scooter Software\Beyond Compare 3
beyondcompare3.regname=ExePath
beyondcompare3.gui=True
beyondcompare3.priority=-2
beyondcompare3.diffargs=/lro /lefttitle='$plabel1' /righttitle='$clabel' /solo /expandall $parent $child

Я также обнаружил, что важно НЕ включать Beyond Compare в extdiff, поэтому он будет использовать beyondcompare3 из раздела merge-tools с аргументами diffargs. (Я beyondcompare3 указан как в ui.merge, так и tortoisehg.vdiff)

Ответ 3

Мне пришлось добавить следующее, чтобы оно работало на моей машине:

[extensions]
extdiff =

[extdiff]
cmd.bc3 = C:\Program Files\Beyond Compare 3\BCompare.exe
opts.bc3 = /ro

Ответ 4

Если вы продолжаете получать эту ошибку "Недоступная папка" из BC (я сделал, когда одновременно открывал несколько экземпляров BC), попробуйте добавить в командной строке параметр /solo, то есть:

[extdiff]
cmd.bcomp = C:\Program Files\Beyond Compare 3\BCompare.exe
opts.bcomp = /leftreadonly /solo

Источник: Форум поддержки программного обеспечения Scooter

Ответ 5

Просмотрите эту страницу со страницы поддержки программного обеспечения Scooter - в нее также включены настройки для большинства систем управления версиями - один для моего списка закладок!

Отрывок:

Чтобы настроить Mercurial, вам необходимо отредактировать файл% USERPROFILE%\Mercurial.ini или $HOME/.hgrc. Добавьте следующие строки, используя существующие разделы INI, если они уже существуют:

Diff

[extensions] extdiff =

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

[tortoisehg] vdiff = bcomp 

После настройки вы можете сравнить версии из командной строки, используя

hg bcomp -r <rev1> [-r <rev2>] [<filename>]

3-Way Merge (v3 Pro)

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

[ui] merge = bcomp

Ответ 6

Я пробовал предложения, даваемые в то время, но никто не работал.

Я нашел следующие работы:

  • Добавить вне сравнительного каталога установки в систему yor path
  • Откройте глобальные настройки и установите для инструментов diff значение bcompare

Теперь попробуйте diff - Beyond Compare!

Ответ 7

Все ответы, которые даны до сих пор, для Windows. Вот моя конфигурация для тех, кто использует Linux.

Diff

[extensions]
extdiff =

[extdiff]
cmd.bcomp = bcompare
opts.bcomp = -ro1

4-Way Merge (v3 Pro)

[merge-tools]
bcomp.executable = bcompare
bcomp.args = -title1='First Parent' -title2='Second Parent' -title3='Common Ancestor' -title4='Output' -ro1 -ro2 -ro3 $local $other $base $output
bcomp.premerge = True
bcomp.gui = True

-ro#: отключает редактирование с указанной стороны

-title#=<title>: Показывает описание вместо имени файла в редактировании пути

# символ: 1 = левый, 2 = правый, 3 = центр, 4 = выход

Для получения дополнительных опций bcompare просто выполните bcompare -help в консоли.

Ответ 8

Если у вас возникли проблемы с правильной обработкой вашей конфигурации, обратите внимание, что любое место для любой переменной или имени раздела приведет к неправильной настройке конфигурации. Я продолжал копировать и вставлять различные настройки и продолжал получать ошибки. Просто закончилось тем, что перед многими переменными были добавлены пробелы, и это не помогло разобрать.

Ответ 9

Если вы используете TortoiseHg, вы можете установить инструмент слияния на Beyond Compare, выбрав File → Settings, а затем выбрав TortoiseHg, выберите Visual Diff Tool и Three-way Merge Tool. Этот параметр влияет на слияния, которые также задаются в командной строке.