Git rebase explique : comprendre et utiliser rebase
Le rebase est l'une des commandes Git les plus puissantes et les plus mal comprises. Cette page t'explique tout : fonctionnement, difference avec merge, rebase interactif et bonnes pratiques.
C'est quoi git rebase ?
git rebase prend les commits de ta branche et les rejoue sur une autre branche, comme si tu avais commence ton travail a partir de la version la plus recente.
Le resultat : un historique lineaire, sans les commits de merge qui encombrent le log. C'est comme remettre tes modifications "au bout de la file" au lieu de creer un embranchement.
La syntaxe de base : git rebase main depuis ta branche feature. Tes commits sont recrees avec de nouveaux identifiants, mais le contenu reste le meme.
Syntaxe de git rebase
git rebase <branche-cible>Rejoue tes commits sur la branche cible
git rebase -i HEAD~nRebase interactif sur les n derniers commits
git rebase --abortAnnule un rebase en cours
git rebase --continueContinue apres resolution d'un conflit
Git rebase en action
Deux exemples concrets : un rebase simple et un rebase interactif.
Rebase simple
Rebase interactif
Git merge vs git rebase : quelle difference ?
git merge
- Preserve l'historique complet (qui a fait quoi, quand)
- Sans risque sur les branches partagees
- Cree un commit de merge explicite
- Historique non lineaire, plus difficile a lire
- Commits de merge qui "polluent" le log
git rebase
- Historique lineaire, propre et lisible
- Pas de commits de merge superflus
- Ideal pour nettoyer avant un merge final
- Reecrit l'historique (nouveaux hash de commits)
- Dangereux sur les branches deja partagees
Bonnes pratiques du rebase
Ne jamais rebaser une branche publique
Si d'autres personnes travaillent sur la branche, utilise merge. Le rebase reecrit l'historique et cree des conflits impossibles pour les autres.
Rebase ta branche feature avant le merge
Avant de fusionner ta branche dans main, fais un git rebase main pour integrer les derniers changements et avoir un historique propre.
Utilise le rebase interactif pour nettoyer
Avant de partager ton travail, fusionne les petits commits correctifs avec squash et clarifie les messages avec reword.
En cas de doute, utilise merge
Merge est toujours sur. Si tu n'es pas certain·e de la situation, merge est le choix le plus prudent. Tu pourras toujours adopter le rebase plus tard.
GitQuest est conçu par Anaïs, développeuse web et responsable pédagogique, spécialisée en formations tech et accessibilité numérique.
Questions sur git rebase
Pratique le rebase dans un environnement securise
Le simulateur GitQuest te permet de tester merge et rebase sans risque. Ideal pour comprendre la difference.
Essayer dans le terminal