Skip to main content

Résolution d’un conflit de fusion sur GitHub

Résolvez des conflits de fusion simples directement à GitHub l’aide de l’éditeur de conflit ou gérez des cas complexes via la ligne de commande.

Vous pouvez résoudre des conflits de modification de ligne concurrents simples sur GitHub. Pour d’autres conflits, utilisez la ligne de commande. Consultez « Résolution d’un conflit de fusion en utilisant la ligne de commande ».

Si un administrateur de site désactive l’éditeur de conflit de fusion pour les demandes d’extraction entre référentiels, résolvez les conflits de fusion sur la ligne de commande.

Avertissement

La résolution des conflits sur GitHub fusionne l’ensemble de la branche de base dans la branche principale. Si la branche head est la branche par défaut ou protégée, vous pouvez être invité à créer une branche de tête. Consultez « À propos des branches protégées ».

  1. Sous le nom de votre référentiel, cliquez sur Demandes d’extraction.

  2. Dans la liste « Demandes d’extraction », cliquez sur la demande de tirage avec un conflit de fusion que vous souhaitez résoudre.

  3. Vers le bas de votre pull request, cliquez sur Résoudre les conflits.

    Capture d’écran d’un avertissement indiquant qu’une pull request a un conflit de branchement. Le bouton « Résoudre les conflits de fusion » est indiqué en orange foncé.

    Remarque

    Si les conflits de résolution sont désactivés, résolvez le conflit à l’aide d’un autre client Git ou de la ligne de commande. Consultez « Résolution d’un conflit de fusion en utilisant la ligne de commande ».

  4. Choisissez si vous voulez garder uniquement les changements de votre branche, garder seulement les changements de l’autre branche ou faire un nouveau changement, ce qui peut incorporer des changements dans les deux branches. Supprimez les marqueurs de conflit <<<<<<<, =======, >>>>>>> et faites les changements que vous voulez dans la fusion finale.

  5. Si votre fichier comporte plusieurs conflits de fusion, faites défiler jusqu’à l’ensemble suivant de marqueurs de conflit et répétez les étapes quatre et cinq pour résoudre le conflit.

  6. Une fois que vous avez résolu tous les conflits dans le fichier, cliquez sur Marquer comme résolu.

    Capture d’écran de l’éditeur pour résoudre un conflit de fusion dans une pull request. Le bouton « Marquer comme résolu » est indiqué en orange foncé.

  7. Si plusieurs fichiers ont un conflit, sélectionnez le fichier suivant que vous souhaitez modifier sur le côté gauche de la page sous « fichiers en conflit » et répétez les étapes quatre à sept jusqu’à ce que vous ayez résolu tous les conflits de fusion dans votre demande de tirage.

  8. Une fois que vous avez résolu tous vos conflits de fusion, cliquez sur Valider la fusion. Cela fusionne l’intégralité de la branche de base dans votre branche principale.

    Capture d’écran de l’éditeur pour résoudre un conflit de fusion dans une pull request. Le bouton « Commiter la fusion » est indiqué en orange foncé.

  9. Si vous y êtes invité, vérifiez la branche dans laquelle vous commitez. Vous pouvez mettre à jour la branche head ou, si disponible, créer une branche pour la demande de tirage. Si la branche head est protégée, vous devez créer une branche.

    Cliquez sur Créer une branche et mettre à jour ma pull request ou Je comprends, continuer à mettre à jour BRANCH.

  10. Pour fusionner votre demande de tirage, sélectionnez Fusionner la demande de tirage. Consultez « Fusion d'une pull request ».

Lectures complémentaires