Skip to main content

Conflits de fusion

Identifiez et résolvez les conflits de fusion dans Git afin de garantir une intégration fluide des branches et la fusion réussie des pull requests.

Dans cet article

Git peut souvent résoudre les différences entre les branches et les fusionner automatiquement. En règle générale, les modifications se trouvent sur différentes lignes ou dans différents fichiers, afin que Git puisse les fusionner sans aide. Parfois, les changements concurrents ont besoin de votre aide. Les conflits de fusion se produisent souvent lorsque des personnes apportent des modifications différentes à la même ligne du même fichier, ou lorsqu’une personne modifie un fichier et qu’une autre personne supprime le même fichier.

Les conflits de fusion bloquent la fusion, car Git ne peut pas choisir en toute sécurité la version du contenu en conflit à conserver. Vous devez résoudre tous les conflits de fusion avant de pouvoir fusionner une pull request sur GitHub. Si votre pull request présente un conflit de fusion entre la branche de comparaison et la branche de base, le bouton Fusionner la pull request est désactivé jusqu’à ce que les conflits soient résolus.

Résolution des conflits de fusion

La résolution d’un conflit de fusion signifie choisir le contenu final qui doit apparaître une fois les branches fusionnées. L’outil approprié dépend du type de conflit.

Sur la ligne de commande, Git vous indique quand une fusion ne peut pas se terminer automatiquement. Vous ne pouvez pas pousser le résultat fusionné tant que vous n’avez pas résolu le conflit et validé la résolution.

$ git merge BRANCH-NAME
> Auto-merging styleguide.md
> CONFLICT (content): Merge conflict in styleguide.md
> Automatic merge failed; fix conflicts and then commit the result

Lectures complémentaires