Sé cómo volver a las confirmaciones anteriores en una rama de Git, pero ¿cómo puedo volver al estado de una rama dictado por una etiqueta? Imagino algo como esto:
git revert -bytag "Version 1.0 Revision 1.5"
es posible?
Sé cómo volver a las confirmaciones anteriores en una rama de Git, pero ¿cómo puedo volver al estado de una rama dictado por una etiqueta? Imagino algo como esto:
git revert -bytag "Version 1.0 Revision 1.5"
es posible?
git checkout <id> .
método de esta respuesta .
Respuestas:
Las etiquetas Git son solo indicadores de la confirmación. Por lo tanto, los usa de la misma manera que HEAD, nombres de sucursales o confirma los hashes sha. Puede usar etiquetas con cualquier comando git que acepte argumentos de confirmación / revisión. Puede probarlo con git rev-parse tagname
para mostrar el compromiso al que apunta.
En tu caso tienes al menos estas dos alternativas:
Restablece la rama actual a una etiqueta específica:
git reset --hard tagname
Genere el compromiso de reversión en la parte superior para llegar al estado de la etiqueta:
git revert tag
Sin embargo, esto podría introducir algunos conflictos si tiene confirmaciones de fusión.
Puedes usar git checkout.
Probé la solución aceptada pero obtuve un error. warning: refname '<tagname>' is ambiguous'
Pero como dice la respuesta, las etiquetas se comportan como un puntero a una confirmación, por lo que, como lo haría con un hash de confirmación, puede simplemente verificar la etiqueta. La única diferencia es que lo introduces con tags/
:
git checkout tags/<tagname>