👍 Voici une fiche d’exercice pédagogique complète sur la manipulation des branches en Git, avec consignes et solutions commentées.
Consignes (élève)
main.Solution (enseignant)
mkdir projet-branches
cd projet-branches
git init
echo "Version initiale" > fichier.txt
git add .
git commit -m "Commit initial"
👉 L’historique contient maintenant un premier commit sur la branche main.
Consignes (élève)
feature-texte.Solution (enseignant)
git checkout -b feature-texte
echo "Ajout depuis la branche feature-texte" >> fichier.txt
git commit -am "Ajout d’une ligne dans feature-texte"
👉 La branche feature-texte contient maintenant un commit qui n’existe pas encore dans main.
Consignes (élève)
main.feature-texte.Solution (enseignant)
git checkout main
cat fichier.txt
# Résultat attendu : seulement "Version initiale"
Puis :
git checkout feature-texte
cat fichier.txt
# Résultat attendu : "Version initiale" + "Ajout depuis la branche feature-texte"
👉 Les branches isolent bien les changements.
mainConsignes (élève)
main.feature-texte.main.Solution (enseignant)
git checkout main
git merge feature-texte
cat fichier.txt
# Résultat attendu :
# Version initiale
# Ajout depuis la branche feature-texte
👉 Un nouveau commit de merge est créé (sauf si fast-forward).
Consignes (élève)
feature-texte devenue inutile.Solution (enseignant)
git branch -d feature-texte
git branch
# Résultat attendu : seule la branche main reste
👉 Bon réflexe : supprimer les branches intégrées pour garder un dépôt propre.
git branch nom → créer une branche.git checkout nom ou git switch nom → se déplacer.git checkout -b nom → créer + se déplacer en une seule commande.git merge nom → fusionner une branche dans celle où tu te trouves.git branch -d nom → supprimer une branche.feature-A et feature-B) et de les fusionner l’une après l’autre.