Fusion de branches (merge)
Fusion d’une branche dans la branche actuelle
git merge nouvelle-branche
Cette commande fusionne les modifications de nouvelle-branche dans la branche actuelle.
Rebase d’une branche
git rebase nouvelle-branche
Cette commande rejoue les commits de la branche actuelle sur nouvelle-branche
. Le rebase permet de créer un historique de commits plus linéaire.
Squash & Merge/Rebase
git merge --squash nouvelle-branchegit rebase --squash nouvelle-branche
Cette commande fusionne les modifications de nouvelle-branche
dans la branche actuelle en un seul commit. Cela permet de conserver un historique de commits plus propre.
Fast-forward merge
git merge --ff-only nouvelle-branche
Cette commande fusionne les modifications de nouvelle-branche
dans la branche actuelle en utilisant un fast-forward merge. Cela signifie que si la branche actuelle est un ancêtre direct de nouvelle-branche
, Git avancera simplement le pointeur de la branche actuelle vers nouvelle-branche
sans créer de commit de fusion.
Avantages
- Historique propre : Le fast-forward merge conserve un historique de commits linéaire et propre, sans commits de fusion supplémentaires.
- Simplicité : Il est plus simple à comprendre et à suivre, surtout pour les projets avec des branches de fonctionnalités courtes.
Limitations
- Non applicable dans tous les cas : Le fast-forward merge n’est possible que si la branche cible n’a pas divergé de la branche source. Si des commits ont été ajoutés à la branche cible après la création de la branche source, un fast-forward merge ne sera pas possible.