git mergetool говорит, что сливать нечего (но есть!)

Скажем, у меня есть файл и две ветки: master и anotherbranch.

Текущая ситуация такова, что с точки зрения расхождения, ветка master имеет один коммит (скажем, строка в файле говорит «Это мастер»), а ветка «anotherbranch» также имеет коммит (та же строка говорит «это другой» ).

Очевидно, что если вы выберете master и сделаете git merge, возникнет конфликт, и вы можете решить его, разрешив конфликт и зафиксировав ветку.

Но теперь я хочу попробовать инструмент git mergetool, поэтому я проверяю мастер и делаю:

git mergetool

This message is displayed because 'merge.tool' is not configured.
See 'git mergetool --tool-help' or 'git help config' for more details.
'git mergetool' will now attempt to use one of the following tools:
tortoisemerge emerge vimdiff
No files need merging

В любом случае не обращайте внимания на первую часть (я решил это, настроив инструмент), но обратите внимание на последнюю строку Объединение файлов не требуется

Какая? никакие файлы не нужно объединять. Ну это просто неправда. Файл нужно объединить, так почему это не работает?


person KansaiRobot    schedule 25.11.2018    source источник
comment
Вы проверили обе ветки до git merge master ?   -  person PStarczewski    schedule 25.11.2018
comment
Я не делал git merge master. Я пытаюсь научиться пользоваться mergetoool   -  person KansaiRobot    schedule 25.11.2018
comment
Сначала вам нужно запустить, например. git checkout master; git merge anotherbranch, а затем, в случае коллизии, запустить git mergetool.   -  person alfunx    schedule 25.11.2018
comment
@alfunx Извините, я не понимаю, в чем логика этого. Если я сделаю git merge и решу конфликты, больше нет необходимости использовать mergetool. На самом деле я сделал следующее раньше (после моей книги); git checkout master, затем git merge anotherbranch и вуаля. Решено. Нет необходимости в mergetool, как вы написали. Дело в том, что я хочу использовать mergetool, а не слияние   -  person KansaiRobot    schedule 25.11.2018
comment
@KansaiRobot git mergetool — это не инструмент общего назначения для выполнения слияний, это инструмент, который может помочь вам разрешить конфликты. Рассмотрим: stackoverflow.com/questions /161813/   -  person alfunx    schedule 25.11.2018
comment
Теперь я понял. (stackoverflow.com/a/32290725/4451521). В конце концов мне удалось запустить mergetool, и я должен сообщить, что это очень бесполезный инструмент. Не планирую больше использовать   -  person KansaiRobot    schedule 25.11.2018
comment
@KansaiRobot Для меня это очень полезный инструмент. Я предпочитаю видеть конфликты как двухсторонние или трехсторонние различия в редакторе, а не необработанный файл с маркерами конфликта Git.   -  person alfunx    schedule 25.11.2018