Vous voudrez peut-être essayer smerge-mode
simplement d'ouvrir le fichier en conflit et de le faire M-xsmerge-mode
RET. Il mettra en évidence toutes les régions en conflit. Il ajoute également des raccourcis clavier pour résoudre facilement les conflits, consultez sa documentation C-hfsmerge-mode
RETpour les connaître.
Préfixe par défaut
Je trouve le préfixe par défaut pour smerge-mode
C-c^fastidieux, donc je l'ai changé pour C-cv
(setq smerge-command-prefix "\C-cv")
Liens importants
Pour moi, les reliures les plus importantes sont:
smerge-next
lié à smerge-command-prefixnpasser au conflit suivant.
smerge-previous
lié à smerge-command-prefixppasser au conflit précédent.
smerge-keep-current
lié à smerge-command-prefixRETconserver la version sur laquelle se trouve le curseur.
smerge-keep-mine
obligé de smerge-command-prefixmgarder vos changements.
smerge-keep-other
lié à smerge-command-prefixogarder d'autres changements.
smerge-ediff
obligé de smerge-command-prefixEdémarrer une session ediff pour fusionner les conflits. C'est la même chose que vc-resolve-conflicts
(merci @phils et @Malabarba pour l'avoir signalé).
Activation automatique du mode smerge
MISE À JOUR: Les éléments suivants ne concernent que les versions Emacs antérieures . Ils 25.1
peuvent entraîner des problèmes pour les versions ultérieures, voir https://github.com/magit/magit/issues/3897.
De plus, vous pouvez être intéressé par l'activation automatique smerge-mode
lors de la visite d'un fichier / tampon avec des marqueurs de conflit, vous pouvez utiliser quelque chose comme ce qui suit pour y parvenir
(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)
Notez que j'utilise buffer-list-update-hook
et pas find-file-hook
depuis la plupart du temps j'obtiens des conflits dans un tampon qui est déjà ouvert dans emacs, auquel cas ce find-file-hook
n'est d'aucune aide.
Vérifiez également les autres méthodes mentionnées dans cette réponse.
e
sur les fichiers en conflit. Magit se lanceraediff
pour effectuer la fusion et vous invitera par la suite à confirmer vos modifications, puis vous pourrez organiser le fichier fusionné.