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.

Concept cle

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~n

Rebase interactif sur les n derniers commits

git rebase --abort

Annule un rebase en cours

git rebase --continue

Continue 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
Recommande pour les branches partagees

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
Recommande pour les branches personnelles

Bonnes pratiques du rebase

1

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.

2

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.

3

Utilise le rebase interactif pour nettoyer

Avant de partager ton travail, fusionne les petits commits correctifs avec squash et clarifie les messages avec reword.

4

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.

A

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