web-dev-qa-db-fra.com

Git reflog une branche spécifique?

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?

18
Asim K T

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!)

21
torek

git reflog peut prendre branch comme paramètre. Comme git reflog production

5
crea1