web-dev-qa-db-fra.com

Comment revenir à une balise spécifique dans Git?

Je sais comment revenir aux anciens commits dans une branche Git, mais comment puis-je revenir à l'état d'une branche dicté par une balise? J'envisage quelque chose comme ceci:

git revert -bytag "Version 1.0 Revision 1.5"

Est-ce possible?

66
zachd1_618

Les balises Git ne sont que des pointeurs sur le commit. Vous les utilisez donc de la même manière que vous utilisez HEAD, les noms de branche ou les sha hashes. Vous pouvez utiliser des balises avec n’importe quelle commande git acceptant les arguments commit/revision. Vous pouvez l'essayer avec git rev-parse tagname pour afficher le commit sur lequel il pointe.

Dans votre cas, vous avez au moins ces deux alternatives:

  1. Réinitialiser la branche actuelle à la balise spécifique:

    git reset --hard tagname
    
  2. Générez revert commit sur le dessus pour obtenir l'état de la balise:

    git revert tag
    

Cela peut toutefois entraîner des conflits si vous avez des commits de fusion.

101
jurglic

Utilisez git reset :

git reset --hard "Version 1.0 Revision 1.5"

(en supposant que la chaîne spécifiée est la balise).

10
devnull