Ви можете спробувати smerge-mode
просто відкрити конфліктний файл і зробити M-xsmerge-mode
RET. Він виділить усі конфліктні регіони. Він також додає вкладиші для легкого вирішення конфліктів, проконсультуючись з його документацією, C-hfsmerge-mode
RETщоб їх знати.
Префікс за замовчуванням
Я знаходжу префікс за замовчуванням для smerge-mode
C-c^громіздкого, тому я змінив його на C-cv
(setq smerge-command-prefix "\C-cv")
Важливі клавіші
Для мене найважливіші прив'язки:
smerge-next
обов'язково smerge-command-prefixnперейде до наступного конфлікту.
smerge-previous
зобов'язаний smerge-command-prefixpперейти до попереднього конфлікту.
smerge-keep-current
зобов’язаний smerge-command-prefixRETзберегти версію курсора.
smerge-keep-mine
зобов’язаний smerge-command-prefixmзберегти ваші зміни.
smerge-keep-other
зобов’язаний smerge-command-prefixoзберегти інші зміни.
smerge-ediff
зобов’язаний smerge-command-prefixEрозпочати сеанс зведення для злиття конфліктів. Це те саме, що vc-resolve-conflicts
(спасибі @phils та @Malabarba, що вказали на це).
Увімкнення режиму смережу автоматично
ОНОВЛЕННЯ: Наступне стосується лише попередніх версій Emacs 25.1
, наведені нижче можуть спричинити проблеми з пізнішими версіями, див. Https://github.com/magit/magit/isissue/3897
Крім того, вас може зацікавити автоматичне включення, smerge-mode
відвідуючи файл / буфер з маркерами конфлікту, ви можете використовувати щось подібне для досягнення цього
(defun my-enable-smerge-maybe ()
(when (and buffer-file-name (vc-backend buffer-file-name))
(save-excursion
(goto-char (point-min))
(when (re-search-forward "^<<<<<<< " nil t)
(smerge-mode +1)))))
(add-hook 'buffer-list-update-hook #'my-enable-smerge-maybe)
Зауважте, що я використовую, buffer-list-update-hook
і не find-file-hook
тому, що більшість випадків я отримую конфлікти в буфері, який вже відкритий у emacs, і в цьому випадку find-file-hook
не допомагає.
Перевірте також інші методи, згадані в цій відповіді
e
на файли, показані як конфліктні. Magit запуститьediff
злиття та запропонує вам підтвердити свої зміни, тоді ви можете встановити об'єднаний файл.