Le rebase interactif permet de nettoyer l’historique d’une branche avant de la merger.
Quand l’utiliser
- Fusionner des petits commits en un seul (squash)
- Corriger un message de commit
- Supprimer un commit accidentel (fichier debug, secret)
La commande de base
git rebase -i HEAD~5
L’editeur affiche les commits :
pick a1b2c3d feat: authentification JWT
pick d4e5f6g fix: validation email
pick g7h8i9j wip: debug
pick j0k1l2m fix: sauvegarde oubliee
Actions disponibles
| Action | Effet |
|---|---|
| pick | Garder tel quel |
| reword | Modifier le message |
| squash | Fusionner avec le precedent |
| fixup | Fusionner, ignorer le message |
| drop | Supprimer |
Exemple concret
pick a1b2c3d feat: authentification JWT
fixup d4e5f6g fix: validation email
drop g7h8i9j wip: debug
pick m3n4o5p test: tests authentification
Resultat : 2 commits propres au lieu de 4 brouillons.
Regle d’or
Ne rebasez jamais une branche partagee. Le rebase reecrit les SHAs.
Notre formation Git couvre le rebase et les workflows avances.