Quand tu développes un projet, tu ne travailles pas toujours directement sur la version principale (main ou master). Parfois, tu veux tester une nouvelle idée, corriger un bug ou développer une nouvelle fonctionnalité sans casser ce qui fonctionne déjà. 👉 C’est exactement à ça que servent les branches en Git : elles permettent de travailler en parallèle sur différentes versions d’un projet.
Une branche est simplement un pointeur vers un état particulier de ton code. Il ne s'agit donc pas d'une copie complète de ton code. Créer une branche est une opération très légère en Git. Cela ne demande pas beaucoup de ressources (espace disque).
La branche principale s’appelle généralement main ou master. Quand tu crées une nouvelle branche, tu obtiens une copie indépendante du projet à partir de laquelle tu peux travailler.
Ainsi :
Expérimenter sans risque Tu veux tester/créer une nouvelle fonctionnalité → tu crées une branche. Si ça ne marche pas, tu la supprimes, et ton projet principal reste propre.
Travailler en équipe Chacun peut développer sa partie du projet sur une branche différente, puis les fusionner quand elles sont prêtes.
Organisation claire
On sait directement où se trouvent les développements en cours : branche feature-login, branche fix-bug-42, etc.
git branch ma-branche
git checkout ma-branche
ou en version moderne :
git switch ma-branche
git checkout -b ma-branche
git branch
mainTu dois être sur main :
git checkout main
git merge ma-branche
git branch -d ma-branche
Quand tu as fini de travailler sur ta branche en local :
Tu l’envoies sur GitHub pour la sauvegarder :
git push -u origin ma-branche
Tu peux alors continuer ton travail depuis un autre ordinateur, ou partager la branche avec d’autres.
Une fois fusionnée localement avec main, pense aussi à pousser main :
git push origin main
Tu travailles sur un site web :
main.feature-contact.feature-contact dans main.feature-login, fix-typo-header...).main fonctionnel (elle doit toujours pouvoir être utilisé).git branch, git checkout, git merge.main propre et stable.👉 Essaie ces étapes :
git init).index.html et fais un commit.test.test et commit.main et regarde : les changements ne sont pas là !