Lab Niveau 11 — Merge Conflict
Objectifs
Section titled “Objectifs”- Provoquer un conflit volontairement
- Lire les marqueurs de conflit
- Résoudre le conflit manuellement
Exercice
Section titled “Exercice”Utilisez le fichier app.js dans labs-code/niveau-11/ comme base.
Deux participants modifient la même ligne du même fichier.
Participant A :
console.log("Login");Participant B :
console.log("Dashboard");Fusionnez. Observez le conflit :
<<<<<<< HEADconsole.log("Login");=======console.log("Dashboard");>>>>>>> feature/dashboardRésolution
Section titled “Résolution”Conservez les deux lignes :
console.log("Login");console.log("Dashboard");Finalisez :
git add .git commitChecklist de validation
Section titled “Checklist de validation”- Deux branches ont modifié la même ligne du même fichier (voir
labs-code/niveau-11/) - La fusion a déclenché un conflit
- Les marqueurs
<<<<<<<,=======,>>>>>>>sont identifiés - Le conflit a été résolu manuellement
-
git addetgit commitont finalisé la fusion
Compétences acquises
Section titled “Compétences acquises”- Résolution de conflits
- Marqueurs de conflit Git
- Fusion manuelle
Fiches de révision
Section titled “Fiches de révision”Quelles sont les stratégies de merge disponibles ?
Cliquer pour révéler la réponsemerge direct, squash (un seul commit), rebase (historique linéaire)
Cliquer pour voir la questionQue faire si un conflit est trop complexe ?
Cliquer pour révéler la réponseExécuter git merge --abort pour annuler la fusion et revenir à l'état initial
Cliquer pour voir la questionAprès avoir résolu un conflit, quelles commandes exécuter ?
Cliquer pour révéler la réponsegit add <fichier> puis git commit pour finaliser la fusion
Cliquer pour voir la questionÉvaluation des connaissances
Section titled “Évaluation des connaissances”Que signifie le marqueur <<<<<<< HEAD dans un conflit Git ?
Comment résoudre un conflit de fusion manuellement ?
Après avoir résolu un conflit, quelle commande doit-on exécuter ?