Par Anonyme (non vérifié) , 29 avril 2026

Le reflog : votre filet de sécurité

Git enregistre chaque mouvement de HEAD dans le reflog — resets, checkouts, rebases, amends, merges.

Inspecter le reflog

git reflog
git reflog show feature/login
git log -g

Récupérer une branche supprimée

git reflog | grep checkout
git checkout -b recovered <sha>

Annuler un mauvais reset

git reset --hard HEAD~5
git reflog
git reset --hard HEAD@{1}

Annuler un mauvais rebase

git reflog
git reset --hard ORIG_HEAD

Récupérer un commit amendé

git commit --amend
git reflog
git reset --hard HEAD@{1}

Trouver des commits orphelins

git fsck --lost-found
git fsck --no-reflog | grep "dangling commit"

Reflog vs stash

git fsck --no-reflog | awk '/dangling commit/ {print $3}'
git stash apply <sha>

Configurer l'expiration du reflog

git config gc.reflogExpire 180.days
git config gc.reflogExpireUnreachable 90.days