Puis-je refloguer une branche spécifique?
git reflog
affiche tout l'historique du dépôt. Mais je veux vérifier l'historique d'une branche spécifique, par exemple production
. Y-a-t-il un moyen de faire ça?
Comme indiqué dans la documentation , git reflog
prend un verbe d'action (appelé <subcommand>
) et des modificateurs facultatifs. L'action par défaut est show
, et son modificateur facultatif est le nom de référence à afficher.
La valeur par défaut est d'afficher les opérations sur HEAD
. (La plupart, mais pas toutes les commandes "quotidiennes" opèrent sur et/ou via HEAD
afin d'opérer sur toute autre référence. Par conséquent, l'affirmation selon laquelle git reflog
montre tout l'historique est en fait faux - mais il montre le plus , qui pourrait être assez proche.) Cela vous donne une réponse immédiate et évidente à la question de l'affichage des opérations appliquées au nom de branche spécifique production
:
git reflog show production
Comme le note la documentation, git reflog show
est un alias pour git log -g --abbrev-commit --pretty=oneline
, vous pouvez donc également exécuter:
git log -g --abbrev-commit --pretty=oneline production
pour obtenir exactement la même sortie. L'interrupteur à clé ici est -g
, qui dirige git log
pour parcourir le reflog de la référence donnée, plutôt que les validations accessibles depuis la validation vers laquelle la référence pointe.
(Vous pouvez continuer à laisser de côté le verbe show
, car c'est toujours la valeur par défaut, bien que dans ce cas, je vous conseille de l'inclure, par exemple, si votre branche est nommée show
ou expire
le nom sera confondu avec le verbe!)
git reflog
peut prendre branch comme paramètre. Comme git reflog production