Просмотр действий по слиянию с KDiff после успешного автоматического решения конфликтов слияния - PullRequest
0 голосов
/ 25 марта 2019

Я использую KDiff как инструмент слияния с Git.После неудачного Git Merge я начал решать конфликты для отдельных файлов с помощью git mergetool, который вызывает KDiff, как указано в моей конфигурации.

Однако для одного файла было сказано: «Количество конфликтов: x. Количество конфликтов, автоматически разрешенных: x. Остальные конфликты: 0 "или что-то на этот счет.Нажав кнопку ОК, вернитесь к консоли, которая перешла к следующему файлу.

После просмотра результата я не был доволен им.Теперь я хочу узнать, возможно ли повторно открыть KDiff со стандартным трехсторонним представлением слияния, даже если я не могу вносить изменения, просто чтобы посмотреть, как он интерпретировал и что-то делал подробно.

РЕДАКТИРОВАТЬ: Вот возможное частичное решение, в котором отсутствует первая часть:

  • Установите KDiff не закрывающимся при автоматическом разрешении всех конфликтов или иначе вообще не разрешайте конфликты автоматически (первый вариант, очевидно, предпочтителен,но нашел некоторые темы переполнения стека о том, как сделать второе, например здесь ).Исследует, возможен ли вообще первый вариант, в настоящее время не реализованный.

  • Используйте команду git checkout -m <path/to/file.extension>, чтобы вернуть файл в конфликтующее состояние после слияния (с конфликтными тегами и всем остальным)., такой, что файл будет помечен как находящийся в состоянии «неразрешенного конфликта» или чего-либо еще, а затем вызов git mergetool <path/to/file.extension> снова запустит KDiff для этого файла, на этот раз с новым значением)

1 Ответ

0 голосов
/ 25 марта 2019

Таким образом, в конце концов решение предложило здесь делает именно то, что нужно: автоматическое объединение, но не закрытие, даже если не осталось конфликтов, так что вы можете просмотреть все, что сделал KDiff.

Теперь для любого файла, который вы уже закончили объединять, вы можете использовать git checkout -m <path/to/file.extension>, чтобы вернуть его обратно в состояние «объединено с неразрешенными конфликтами», а затем запустить измененный «KDiff no auto» mergetool.

...