¿Cómo se elimina una etiqueta git que ya ha sido empujado al origen?
Respuestas
¿Demasiados anuncios?Usted sólo tiene que empujar un 'vacío' de referencia para el control remoto de la etiqueta de nombre de:
git push origin :tagname
O, más expresamente, el uso de la --delete
opción:
git push --delete origin tagname
Antecedentes
Empujando una rama, la etiqueta, u otra referencia a un repositorio remoto implica especificar "push donde, de qué fuente, ¿qué destino?"
git push where-to-push source-ref:destination-ref
Un ejemplo del mundo real donde usted empuje de su rama principal del origen de la rama master es:
git push origin refs/heads/master:refs/heads/master
Que debido a las rutas de acceso predeterminadas, puede ser acortado a:
git push origin master:master
Las etiquetas funcionan de la misma manera:
git push refs/tags/release-1.0:refs/tags/release-1.0
Por la omisión de la fuente ref (la parte antes de los dos puntos), push 'nada' a la de destino, borrar el ref en el extremo remoto.
Si usted tiene una etiqueta remoto v0.1.0
de borrar, y el mando a distancia es origin
, entonces simplemente:
git push origin :refs/tags/v0.1.0
Si también necesita eliminar la etiqueta local:
git tag -d v0.1.0
Véase la respuesta de Adán Franco 's para una explicación de inusual de Git :
sintaxis para su eliminación.
git tag -l | xargs git tag -d
git fetch
primeras dos líneas para borrar todas las etiquetas locales y obtener la lista de etiquetas remotas
git tag -l | xargs -n 1 git push --delete origin
esto eliminará todas las etiquetas remotas
git tag -l | xargs git tag -d
esta voluntad limpieza de las etiquetas locales