В IntelliJ (в данном случае 2021.3.1) есть инструмент — щелчок правой кнопкой мыши, Git
, Resolve Conflicts...
— который предоставляет трехпанельный инструмент «ваш/объединенный/их» для устранения конфликтов.
Тем не менее, мне всегда проще исправить проблемы на месте, в обычной панели редактирования IDE, а затем отметить, что конфликты устранены.
Однако, сделав это, как вы отметите, что проблемы с рассматриваемым файлом исправлены?
При использовании IJ в прошлом с Subversion была возможность просто пометить файл как исправленный (щелчок правой кнопкой мыши, Subversion
, Mark Resolved
— я думаю, что это так.)
Наверняка должен быть способ сделать то же самое при использовании git?
Это кажется очень простой вещью. Но сейчас я делаю третью попытку Google, просматриваю документацию IJ и ничего.
ОБНОВИТЬ:
Чтобы было ясно, я вообще не хочу использовать трехпанельный диалог Merge Revisions. Я хочу отредактировать различия, как показано в обычном окне редактирования (как показано ниже), а затем пометить файл как исправленный, когда закончите. Раньше это было возможно, по крайней мере, с svn, хотя я подозреваю, что это может быть разница в версии IJ, а не конкретно в svn против git. Параметры меню для Mark Resolved
текущего файла просто больше не существуют.
например Я хочу отредактировать это прямо в IDE...
before
<<<<<<< HEAD
my changes
=======
their changes
>>>>>>> master
after
И когда я отредактировал его, чтобы он был...
before
my changes and their changes
after
... Я просто хочу отметить в IJ, что я исправил конфликт.
Однако, сделав это, как вы отметите, что проблемы с рассматриваемым файлом исправлены?
Если IntelliJ по-прежнему предлагает вам разрешить слияние для файла, который вы уже очистили (удалить/разрешить маркеры слияния), вы все равно можете выбрать «Разрешить конфликт».
IDE должна показать вам, как задокументировано здесь:
Когда вы успешно разрешите все конфликты слияния, IntelliJ IDEA сообщит вам, что
All Changes have been processed
.
Когда вы нажимаетеApply
, все конфликты в файле разрешаются.
@Paul Моя точка зрения такова: разрешите слияние точно так, как вы хотите, затем откройте диалоговое окно Merge Revision: поскольку все уже разрешено, он должен предложить вам просто нажать «Применить». Готово.
Просто git add
рассматриваемый файл. Или используйте действие IntelliJ Add to VCS
для файла.
Спасибо. Это был дроид, которого я искал. Это беспокоило меня целую вечность.
Да, это не очевидно, и я обнаружил это случайно в какой-то момент.
Спасибо, но это просто документирование того, как я не хочу этого делать. Я вообще не хочу использовать трехпанельный диалог Merge Revisions. Я просто хочу отредактировать конфликты, отмеченные в исходном источнике, и отметить, что они разрешены, когда я закончу. Раньше я мог делать это при работе с svn, но не сейчас с git. (Хотя это вполне может быть изменение версии IJ, а не конкретное изменение svn vs git.)