Как настроить Araxis Merge для использования с Git?
Я понимаю, что Araxis Merge теперь полностью поддерживается mergetool
для Git, поэтому многое из того, что я могу найти о настройке Git для его использования, теперь устарело. В частности, Araxis Merge должен работать "из коробки", просто выполнив
git config --global merge.tool araxis
если araxis
находится на моем PATH.
Однако по нескольким причинам изменение моего PATH не является вариантом, поэтому мне нужно указать правильный path
или cmd
в .gitconfig
.
Как мне настроить Git (на OS X), чтобы он нашел Araxis Merge? Просто следуя примеру других инструментов, таких как kdiff3
и p4merge
с
git config --global mergetool.araxis.path /Applications/Araxis Merge.app/Contents/MacOS/Araxis Merge
не работает; а также (угадывание) с помощью
git config --global mergetool.araxis.path /Applications/Araxis Merge.app/Contents/Utilities/araxisgitmerge
git config --global difftool.araxis.path /Applications/Araxis Merge.app/Contents/Utilities/araxisgitdiff
Как мне настроить мой araxis.path
? Существуют ли дополнительные параметры Git, которые должны использоваться с Araxis Merge?
Ответы
Ответ 1
Git теперь использует утилиту Araxis compare
напрямую, а не araxisgitdiff
и araxisgitmerge
, поэтому все, что необходимо, - установить path
на
/Applications/Araxis Merge.app/Contents/Utilities/compare
например, выполнив
git config --global mergetool.araxis.path '/Applications/Araxis Merge.app/Contents/Utilities/compare'
или путем прямого редактирования ~/.gitconfig
, содержащего
[mergetool "araxis"]
path = /Applications/Araxis Merge.app/Contents/Utilities/compare
Ответ 2
Убедитесь, что вы используете git версию 1.6.4 или выше. Скопируйте эти утилиты из папки "Утилиты" в установочном образе Araxis Merge на /usr/local/bin
.
araxisgitmerge
araxisopendiff
compare
compare2
Затем отредактируйте ~/.gitconfig
и добавьте следующие строки:
[diff]
tool = araxis
[merge]
tool = araxis
При следующем вводе git mergetool
он должен запустить графический инструмент Araxis Merge.
Эта информация была взята из официальной документации Araxis здесь.
Ответ 3
Трудно понять суть потока, поэтому я вставляю ниже точного .gitconfig, который работал у меня:
[diff]
tool = araxis
[merge]
tool = araxis
[mergetool "araxis"]
path = /Applications/Araxis Merge.app/Contents/Utilities/compare
Ответ 4
@raxacoricofallapatorius отличный ответ! Но вам нужно запустить эту командную строку с кавычками (из-за пространства в Araxis Merge. Без кавычек был создан усеченный путь "/Applications/Araxis", который не работал явно, но добавление кавычек и повторное выполнение этой команды зафиксировали мой Спасибо.
Fix:
git config --global mergetool.araxis.path "/Applications/Araxis Merge.app/Contents/Utilities/compare"