Avant toute chose, dédramatisons : les conflits Git sont tout à fait normaux.

Même les développeurs avec 20 ans d'expérience ont des conflits tous les jours. Ce n'est pas un bug. C'est simplement Git qui te demande ton avis car il refuse de prendre une décision dangereuse à ta place.

1. Pourquoi un conflit apparaît ?

Reprenons l'analogie du chapitre précédent. Tu as le livre officiel (la branche principale) et ton brouillon (la branche test).

Dans le livre officiel, tu as écrit à la ligne 10 : "La voiture est bleue".
Dans ton brouillon, à la même ligne 10, tu as écrit : "La voiture est rouge".

Quand tu demandes à Git de fusionner les deux (le fameux git merge), il est bloqué. Il ne sait pas si la voiture doit être bleue ou rouge. Il fige tout et déclare : "C'est un conflit".

2. Comment l'identifier ?

Quand un conflit survient, ton terminal s'arrête et t'affiche un message assez effrayant :

Si tu ouvres le fichier problématique (ici index.html) dans ton éditeur de code, tu verras que Git y a inséré des symboles très étranges :

La partie supérieure (entre <<<<<<< et =======) montre le code actuel de la branche principale.
La partie inférieure (entre ======= et >>>>>>>) montre le code de ton brouillon.

3. Comment le résoudre ?

La résolution est totalement manuelle. C'est à toi de nettoyer le fichier.

Tu as trois choix possibles :

  • Garder la version du haut (le bleu).
  • Garder la version du bas (le rouge).
  • Créer un mélange des deux (une voiture violette).

Dans ton éditeur, tu effaces simplement avec la touche Suppr les balises de Git (les ==== et <<<<) et le code que tu ne veux pas garder. Une fois que le fichier ressemble à ce que tu souhaites, tu le sauvegardes.

Astuce

Si tu utilises VS Code, tu n'as même pas besoin d'effacer les balises à la main. L'éditeur affiche des boutons verts magiques au-dessus du conflit : "Accepter la modification actuelle" ou "Accepter la modification entrante". Clique sur l'un d'eux, et c'est réglé !

4. Comment les éviter ?

Tu ne pourras jamais les éviter totalement, mais tu peux en réduire la fréquence.

La meilleure technique : fusionne tes branches très souvent.

Si tu laisses ta branche "brouillon" vivre seule pendant deux mois pendant que tes collègues modifient la branche principale tous les jours, la fusion sera un carnage rempli de conflits. Fais des petites branches rapides de quelques heures.

5. Les erreurs les plus fréquentes

Attention

L'oubli de balises : L'erreur classique est de résoudre le conflit mentalement en corrigeant le code, mais d'oublier d'effacer les =======. Ton site plantera car ces caractères ne sont pas du vrai code.

Attention

Oublier de valider : Une fois le fichier nettoyé, Git ne devine pas que tu as fini. Tu dois absolument faire un git add puis un git commit pour lui dire : "C'est bon, le conflit est résolu, valide la fusion".

6. Checklist de résolution

Bonnes pratiques
  1. J'ouvre le fichier en conflit dans VS Code.
  2. Je choisis quelle ligne de code je veux vraiment garder.
  3. J'efface minutieusement tous les symboles Git (<<<, ===, >>>).
  4. Je sauvegarde le fichier.
  5. Dans le terminal, je tape git add . puis git commit -m "Résolution du conflit".

7. FAQ

Oui, temporairement. Les fichiers avec conflits contiennent des marqueurs bizarres (les flèches). Ton site ne s'affichera probablement plus correctement tant que tu n'auras pas fait ton choix.
Absolument ! Si tu te sens perdu au milieu d'un énorme conflit, tape simplement 'git merge --abort'. Git annulera la fusion et tout redeviendra comme avant.
Oui ! C'est d'ailleurs l'une de ses plus grandes forces. Tu peux lui dire : 'J'ai un conflit dans index.html, je veux garder la version bleue'. Il nettoiera le fichier pour toi.

Git n'a désormais plus aucun secret pour toi. Il est temps de rassembler toutes ces connaissances. Dans le tout dernier chapitre de cette partie, nous allons te montrer le workflow parfait pour travailler au quotidien avec Claude Code et Git en parfaite harmonie.