He clonado un repository remoto de Git en mi computadora portátil, luego quise agregar una label, así que corrí
git tag mytag master
Cuando ejecuto git tag
en mi computadora portátil, se muestra la label mytag
. Luego quiero enviar esto al repository remoto, así que tengo esta label en todos mis clientes, así que ejecuto git push
pero recibí el post:
Todo actualizado
Y si voy a mi escritorio y ejecuto git pull
y luego git tag
no se muestran tags.
También intenté hacer un pequeño cambio en un file en el proyecto, luego presionarlo en el server. Después de eso, pude sacar el cambio del server a mi computadora de escritorio, pero aún no hay ninguna label al ejecutar la git tag
en mi computadora de escritorio.
¿Cómo puedo enviar mi label al repository remoto para que todas las computadoras cliente puedan verla?
Para empujar una sola label:
git push origin <tag_name>
Y el siguiente command debe presionar todas las tags (no recomendado):
git push --tags
–follow-tags es una opción sensata introducida en Git 1.8.3:
git push --follow-tags
Impulsa las confirmaciones y solo las tags que son ambas:
Esto es sensato porque:
Es por esas razones que – las --tags
deben evitarse.
Git 2.4 ha agregado la opción push.followTags
para activar esa bandera de forma pnetworkingeterminada con la que puede establecer:
git config --global push.followTags true
Para enviar una label específica, una label debe seguir a git push origin tag_name
Para ampliar la respuesta de Trevor , puede insert una sola label o todas sus tags a la vez.
git push <remote> <tag>
Este es un resumen de la documentation relevante que explica esto (algunas opciones de command se omiten por brevedad):
git push [[<repository> [<refspec>…]] <refspec>...
El formatting de un parámetro
<refspec>
es … la fuente ref<src>
, seguido de dos puntos:
seguido de la reference de destino<dst>
…El
<dst>
indica qué ref en el lado remoto se actualiza con este command … Si:<dst>
se omite, se actualizará la misma reference que<src>
…tag
<tag>
significa lo mismo querefs/tags/<tag>:refs/tags/<tag>
.
git push --tags <remote> # Or git push <remote> --tags
Aquí hay un resumen de la documentation relevante (algunas opciones de command se omiten por brevedad):
git push [--all | --mirror | --tags] [<repository> [<refspec>…]] --tags
Todos los refs bajo
refs/tags
son empujados, además de las references especificadas explícitamente en la línea de command.
Puedes empujar las tags como este git push --tags
Las tags no se envían al repository remoto con el command git push. Necesitamos enviar explícitamente estas tags al server remoto utilizando el siguiente command:
git push origin <tagname>
Podemos empujar todas las tags a la vez usando el siguiente command:
git push origin --tags
Aquí hay algunos resources para get detalles completos sobre el labeldo de git:
Puede empujar sus tags locales simplemente con el command git push --tags
.
$ git tag # see tag lists $ git push origin <tag-name> # push a single tag $ git push --tags # push all local tags
Si trabajas en una sucursal:
git push --tags origin branch_name