Aller au contenu principal

Se connecter

Sauvegarde ta progression et retrouve-la sur tous tes appareils.

Ou par email

Pas encore de compte ?

Politique de confidentialité

Git reflog : retrouver les commits perdus

Tu as perdu un commit apres un reset ? Supprime une branche par erreur ? Le reflog est le filet de securite de Git. Il enregistre tout, meme ce que git log ne montre plus.

Concept cle

C'est quoi git reflog ?

git reflog (reference log) enregistre chaque mouvement de HEAD dans ton depot local : commits, checkouts, resets, merges, rebases...

Contrairement a git log qui montre uniquement la chaine de commits accessible, le reflog voit tout l'historique, y compris les commits "perdus" apres un reset ou un rebase.

C'est ton filet de securite : tant que tu as commit quelque chose, le reflog peut t'aider a le retrouver.

Syntaxe de git reflog

git reflog

Affiche l'historique complet de HEAD

git reflog show <branche>

Reflog d'une branche specifique

git reset --hard HEAD@{n}

Revenir a un etat precedent du reflog

Le reflog en action

Voir le reflog et recuperer des commits perdus apres un reset accidentel.

Consulter le reflog

Recuperer un commit perdu

3 situations ou le reflog te sauve

Reset --hard accidentel

Tu as fait git reset --hard et perdu des commits. Le reflog les a enregistres, tu peux revenir en arriere.

git reset --hard HEAD@{1}

Branche supprimee

Tu as supprime une branche avec git branch -D. Retrouve son dernier commit dans le reflog et recree-la.

git checkout -b ma-branche <hash>

Rebase qui a mal tourne

Un rebase a cree des problemes ? Le reflog te permet de retrouver l'etat d'avant le rebase et d'y revenir.

git reset --hard HEAD@{n}

Bonnes pratiques avec le reflog

1

Commite souvent

Le reflog ne peut sauver que ce qui a ete commit. Les modifications non commitees ne sont pas enregistrees.

2

Verifie le reflog avant un reset

Avant de faire un reset --hard, note le hash actuel au cas ou tu voudrais revenir en arriere.

3

Le reflog est local

Le reflog n'est pas partage. Si tu perds ton depot local (disque dur HS), le reflog est perdu aussi. Pousse regulierement vers le distant.

4

Les entrees expirent

Par defaut, les entrees du reflog expirent apres 90 jours. N'attends pas trop longtemps pour recuperer un commit perdu.

Fait partie du guide Annuler des modifications Git

A

GitQuest est conçu par Anaïs (nouvelle fenêtre), développeuse web et responsable pédagogique, spécialisée en formations tech et accessibilité numérique.

Questions sur git reflog

Pratique le reflog sans risque

GitQuest te met face a des situations ou tu dois retrouver des commits perdus. Entraine-toi dans un environnement securise.

S'entrainer maintenant