Conflits de fusion

Git niveau intermédiaire

George Boorman

Curriculum Manager, DataCamp

Conflits

  • Conflit

    • Impossibilité de résoudre les différences de contenu entre un ou plusieurs fichiers entre les branches.
  • Modifiez le même fichier dans deux branches

  • Tentez la fusion

  • Git ne sait pas quelle version conserver

  • Conflit !

Git niveau intermédiaire

Versions contradictoires de README.md

Branche documentation

# Contents and usage

This repo contains source code 
for the DataCamp website.

It also contains source code for an 
AI-Assistant (recommendation system) 
that takes prompts from learners and 
returns suggested content
that they might be interested in. 

It is for internal use only, 
external access is prohibited.

Branche ## main

# Contents and usage

This repo contains source code 
for the DataCamp website.

It is for internal use only, 
external access is prohibited.
Git niveau intermédiaire

Fusion

  • De la branche main
git merge documentation
Auto-merging README.md
CONFLICT (add/add): Merge conflict in README.md
Automatic merge failed; fix conflicts and then commit the result.
Git niveau intermédiaire

Ouverture du fichier

nano README.md

Fichier README affichant les sections conflictuelles à l'aide de nano

Git niveau intermédiaire

Syntaxe des conflits Git

Fichier de conflit annoté présentant le contenu de la branche principale par rapport à celui de la branche de documentation.

Git niveau intermédiaire

Résolution du conflit

Éditeur web nano supprimant la syntaxe Git <<<<<<< documentation, =======, et >>>>>>> HEAD

  • Enregistrez : Ctrl + O (et non Ctrl + 0), puis Enter
  • Quittez : Ctrl + X
Git niveau intermédiaire

Fusion des branches

  • Fusion maintenant que le conflit est résolu
git add README.md
git commit -m "Resolving README.md conflict"
git merge documentation
Already up to date.
  • Mieux vaut prévenir que guérir.
Git niveau intermédiaire

Passons à la pratique !

Git niveau intermédiaire

Preparing Video For Download...