Установка простая, но есть пара пунктиков которые надо отметить. Кратенько по установке:
Запоминаем путь установки, его потом будем прописывать в gitconfig
Эта прога может сравнивать много чего, включая каталоги, бинарники и т.д. и т.п. Для сравнения некоторых файлов она использует плагины, которые можно посмотреть и скачать тут
http://www.prestosoft.com/edp_plugins.asp
Чуть чуть донастроим сам ExamDiff. Он может выдавать разные предупреждения. И часто может вылетать вот такое:
Нам сообщают что у нас в файле нет новой строки в конце файла. Видимо это считается хорошим тоном. Так или иначе это сообщение можно отключить по совету данному в подсказке, что мы и сделаем:
И сделаем еще одну настройку, чтобы ExamDiff не создавал .bak файлов в рабочей директории
Теперь настраиваем ExamDiff а работу с Git. На сайте ExamDiff есть инструкция как его настраивать, но я немного изменил их вариант, чтобы было так, как удобней мне. Я просто поменял в разделе [difftool "edp"] $REMOTE и $LOCAL местами, относительно того как написано в документации, чтобы файлы из разных коммитов отображались в порядке перечисления коммитов.
В любом случае, если вас не устроят мои настройки вы можете сделать как вам удобнее.
Сразу приведу текстовый вариант настройки:
[diff] tool = p4m tool = kdiff3 tool = dm tool = dfu tool = wm tool = ss tool = bc4 tool = araxis tool = edp [difftool "p4m"] cmd = "p4merge.exe $LOCAL $REMOTE" [difftool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe [difftool "dm"] cmd = C:/Program\\ Files/DiffMerge/sgdm.exe $LOCAL $REMOTE [difftool "dfu"] cmd = diffusew $LOCAL $REMOTE [difftool "wm"] cmd = winmergeu $LOCAL $REMOTE [difftool "ss"] cmd = smartsynchronize.exe $LOCAL $REMOTE [difftool "bc4"] cmd = bcomp.exe $LOCAL $REMOTE [difftool "araxis"] path = C:\\Program Files\\Araxis\\Araxis Merge\\compare.exe [difftool "edp"] cmd = \"C:/Program Files/ExamDiff Pro/ExamDiff.exe\" \"$LOCAL\" \"$REMOTE\" //nh [difftool] prompt = false keepBackup = false trustExitCode = false [merge] tool = p4m tool = kdiff3 tool = dm tool = dfu tool = ss tool = bc4 tool = araxis tool = edp [mergetool] prompt = false keepBackup = false keepTemporaries = false [mergetool "p4m"] cmd = "p4merge.exe $BASE $LOCAL $REMOTE $MERGED" trustExitCode = true [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe [mergetool "dm"] cmd = C:/Program\\ Files/DiffMerge/sgdm.exe -merge -result=$MERGED $LOCAL $BASE $REMOTE [mergetool "dfu"] cmd = diffusew $MERGED $LOCAL $BASE $REMOTE [mergetool "ss"] cmd = smartsynchronize.exe $LOCAL $REMOTE $MERGED trustExitCode = false [mergetool "bc4"] cmd = bcomp.exe $LOCAL $REMOTE $BASE $MERGED trustExitCode = true [mergetool "araxis"] path = C:\\Program Files\\Araxis\\Araxis Merge\\compare.exe [mergetool "edp"] cmd = \"C:/Program Files/ExamDiff Pro/ExamDiff.exe\" //merge \"$REMOTE\" \"$BASE\" \"$LOCAL\" //o:\"$MERGED\" //dn1:\"Remote\" //dn2:\"Base\" //dn3:\"Local\" //dno:\"Output\" //nh
Ну и чтобы понятней было с последней строчкой приведу скрин редактора Far manager
Ну а теперь испытываем в работе diff. Даем команду
$ git difftool ffd6b37 c258082 --tool=edp --cc test.txt
И получаем всплывшее окно ExamDiff
Теперь проверяем слияние командами
$ git merge newbranch
$ git mergetool --tool=edp
Получаем всплывшее окно ExamDiff Pro
Разрешаем конфликт, сохраняем и выходим из программы.
Все работает.
Комментариев нет:
Отправить комментарий