Résoudre les conflits de fusion
Un conflit se produit lorsque les deux branches modifient les mêmes lignes. Le résolveur de GitTree affiche les deux versions côte à côte, A et B : cochez les lignes à conserver dans chaque conflit, cochez le Output, puis Save et continuez la fusion, le rebase ou le tri.
Fonctionne dans GitTree Gratuit : toutes les fonctionnalités Git locales, une fois connecté.
Sur cette page
Avant de commencer
- Une fusion, un rebase, un Cherry-Pick ou un Revert stoppé par des conflits : la bannière le dit et les compte.
Où le trouver
- La bannière au-dessus du graphique : Resolve.
- Dans le panneau des modifications, les fichiers en conflit sont répertoriés en premier ; sélectionnez-en un pour l’ouvrir.
| Action | macOS | Windows et Linux |
|---|---|---|
| Prochaine modification dans le fichier | F7 | F7 |
| Modification précédente dans le fichier | ⇧F7 | Shift+F7 |
Mesures
Ouvrez le fichier en conflit
Sélectionnez Resolve dans la bannière. Le résolveur ouvre le premier fichier en conflit, avec le nombre de conflits qu'il contient et 0 of 2 conflicts resolved au-dessus.

Chaque côté nomme son commit et sa branche ; la sortie ci-dessous montre ce que le fichier contiendra.Interface GitTree avec un référentiel de démonstration. Décider de chaque conflit
Pour Conflict 1, cochez les lignes à conserver dans A, dans B, ou dans les deux. Keeps 1 of 1 lines confirme votre choix ; le conflit est marqué comme résolu dès que quelque chose est décidé. Take Neither n'en conserve aucun.
Vérifiez la sortie
Le volet Output affiche le fichier tel qu'il sera enregistré, avec une note sur chaque conflit encore indécis et Go to Conflict pour y accéder. Utilisez Edit Output pour saisir un correctif à la main et Show Base pour voir l'ancêtre commun.
Enregistrer et continuer
Appuyez sur Save pour écrire le fichier et marquez-le comme résolu. Lorsque chaque fichier est résolu, choisissez Continue dans la bannière pour terminer l'opération.
Résultat attendu
L'étape de fusion (ou de rebase) se termine avec votre résolution et la bannière disparaît.
Des moyens de résolution plus rapides
- La case à côté de A ou B dans l'en-tête prend en compte tous les conflits du fichier de ce côté.
- Undo Choice et Redo Choice parcourent vos décisions sans toucher au dossier.
- Open in Merge Tool transmet le fichier à l'outil de fusion externe défini dans votre configuration Git.
- Avec
rerereactivé, Git réutilise la façon dont vous avez résolu le même conflit auparavant ; GitTree indique Reused resolution et vous permet de le consulter.
Si quelque chose ne va pas
"Le résultat comporte toujours... des lignes de marqueurs de conflit ; il ne peut pas être enregistré tant qu'elles ne sont pas supprimées."
Vous avez modifié la sortie à la main et une ligne telle que <<<<<<< ou >>>>>>> reste. Supprimez-le ou décidez plutôt du conflit avec les cases.
"Ce fichier a changé sur le disque pendant que vous le résolviez."
Un autre programme a écrit dans le fichier. GitTree conserve vos choix précédents : comparez-les avec le fichier maintenant, utilisez-les comme sortie ou supprimez-les.
Questions
De quel côté est le mien ?
Lors d'une fusion, A est votre branche actuelle et B la branche en cours de fusion ; chaque en-tête nomme le commit et la branche. Lors d'un rebase, ils échangent : A est la branche sur laquelle vous rebasez, B votre commit en cours de relecture.