Я отключил то, что мне не нужно
Ставим в путь по умолчанию, далее его будем использовать в настройках
Ну и запустим для проверки
Все, работает. Жмем Cancel и настраиваем сперва KDiff3 на работу с Git. Для этого идем в настройки
Далее в Directory снимаем указанную галку. Это делается, чтобы KDiff не оставляла файлы с расширением .orig.
Теперь настраиваем confgi Git’a так:
[diff] tool = p4m tool = kdiff3 [difftool "p4m"] cmd = "p4merge.exe $LOCAL $REMOTE" [difftool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe [difftool] prompt = false keepBackup = false trustExitCode = false [merge] tool = p4m tool = kdiff3 [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
В данном конфиге у нас уже уже определены две внешние утилиты сравнения и слияния KDiff3 и P4Merge. В редакторе Far manager это выглядит так:
Ну и теперь проверяем все это в Git. Для этого даем команду
$ git difftool c258082 ffd6b37 --tool=kdiff3 --cc test.txt
И видим запустившееся окно утилиты KDiff3 без того чтобы Git задавал лишние вопросы (это мы настроили в конфиге).
И так сравнение с помощью KDiff3 работает. И кстати “мусора” (файла с расширением .orig) после выхода из KDiff3 не наблюдается. Теперь проверяем слияние. Даем команды:
$ git merge newbranch
$ git mergetool --tool=kdiff3
И получаем всплывшее окошко KDiff3 в котором нам сообщили о количестве конфликтов и т.д и т.п. Кстати, появление этого информационного окна можно отключить в настройках KDiff3.
Далее смотрим конфликт.
Разрешаем его, жмем сохранить и выходим из KDiff3
И благодаря нашим настройкам рабочий каталог остается без “мусора”, остается только сделать коммит, чтобы зафиксировать изменения.
Ну или дать команду
$ git merge --abort
Чтобы отменить слияние.
$ git difftool c258082 ffd6b37 --tool=kdiff3 --cc test.txt
ОтветитьУдалитьfatal: ambiguous argument 'c258082': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git [...] -- [...]'
При прочтении статей и воспроизведении примеров рекомендуется включать мозг
УдалитьЭто связано с тем, что уважаемый аfftar им не пользовался во время написания данной статьи?
УдалитьЭто связано с тем что вы тупо повторяете примеры не вникая в их суть.
УдалитьВаша сударь тупость заключена в этом c258082 ffd6b37. Если бы вы понимали что это такое вы бы не задали изначальный вопрос.
И кроме того, если бы вы знали английский, где собственно объясняется что не так вы сделали, то вы опять же не задали этот вопрос. Поэтому еще раз рекомендую включить мозг, ну или при отсутствии оного воспользоваться, допустим Google переводчиком и перевести во эту фразу: atal: ambiguous argument 'c258082': unknown revision or path not in the working tree.
УдалитьИзвините за жесткие ответы, но когда тупят на ровном месте это вызывает сомнения в наличии мыслительных способностей хотя бы среднего уровня, достаточного чтобы разобраться в том то такое хэш коммита.
ОтветитьУдалитьПочему нельзя было сразу, не опускаясь до откровенного хамства, дать ответ человеку, который в 1й день пользования Git пытается понять, какие инструменты для этого нужны и не знает, что это за код 'c258082' и какое отношение они имеют к хешу коммита? Зачем было выдавать в себе агрошкольника?
УдалитьИли заменить в тексте примера $ git difftool xxxxxxx --tool=kdiff3 --cc test.txt
с пометкой "годе xxxxxxx - это хеш коммита" Чтобы было сразу понятно. Мне задерживаться на этом было некогда всё остальное сработало, за что Огромное Вам спасибо.
Вам я советую повзрослеть.
Спасибо за совет. Он очень хорош. Я им воспользуюсь. Что такое хэши было объяснено почти в самом в самом начале блога, когда а я говорил про коммиты. И хэши это настолько очевидная вещь, тем более в данном примере, что меня не мало удивил ваш изначальный комментарий, в котором в самом же и содержался ответ на ваш вопрос, просто он был на английском языке. Поэтому я и порекомендовал включить мозг при воспроизведении примеров. К тому же 12 мая я только вернулся из штатов и меня плющил шифтинг поясов и ваш вопрос просто вызвал раздражение. Тем более если вы человек с бородой.
УдалитьНо за ваш совет спасибо большое. Я действительно был не прав в своей манере ответа. У меня такое иногда бывает еще. Я работаю над собой. Спасибо еще раз за ваше терпение.
И ко всему прочему В САМОЙ ПЕРВОЙ СТАТЬЕ я объяснил что такое хэш коммита. Поэтому у меня вызвал раздражение ваш вопрос. Карл, в самой первой статье! Карл :)
ОтветитьУдалить