Soy consciente de la razón por la cual git push --tags
es una operación separada a simple viejo git push
. Empujar las etiquetas debe ser una elección consciente ya que no quiere presionar una. Esta bien. Pero, ¿hay alguna forma de presionar a los dos juntos? (Aparte de git push && git push --tags
.)Empuje las escrituras y las etiquetas de git al mismo tiempo
Respuesta
Actualización mayo el año 2015
A partir de git 2.4.1, puede hacerlo
git config --global push.followTags true
Si se establece para permitir la verdadera opción --follow-etiquetas por defecto. Puede anular esta configuración en el momento de la inserción especificando --no-follow-tags.
Update Abril 2013
Desde git 1.8.3 (April 22d, 2013), ya no tiene que hacer 2 comandos para empujar las ramas, y luego empujar las etiquetas:
La nueva opción "
--follow-tags
" cuenta "git push
"a empujar las etiquetas anotadas relevantes al empujar ramas.
Ahora puede intentar, al empujar nuevas confirmaciones:
git push --follow-tags
que no va a empujar todo las etiquetas locales, sin embargo, sólo el que hace referencia confirmaciones que son empujadas con el git push
.
Git 2.4.1+ (Q2 2015) introducirá la opción push.followTags
: ver "How to make “git push
” include tags within a branch?".
Respuesta original, septiembre de 2010
La opción nuclear sería git push --mirror
, lo que empujará todos los árbitros bajo refs/
.
También puede empujar simplemente una etiqueta con su rama actual se comprometen:
git push origin : v1.0.0
Se puede combinar la opción --tags
con un refspec como:
git push origin --tags :
(desde --tags
significa: Todos los árbitros en virtud refs/tags
son empujados, además de referencias especificadas explícitamente en la línea de comando)
Usted también tiene la entrada "Pushing branches and tags with a single "git push" invocation"
Un consejo útil se acaba de publicar en la Git mailing list de Zoltán Füzesi:
utilizo
.git/config
de resolver esto:
[remote "origin"]
url = ...
fetch = +refs/heads/*:refs/remotes/origin/*
push = +refs/heads/*
push = +refs/tags/*
Con estas líneas agregó
git push origin
cargará todas sus ramas y etiquetas. Si desea subir solo algunos de ellos, puede enumerarlos.Aún no lo he probado, pero parece que podría ser útil hasta que se agregue otra forma de empujar ramas y etiquetas al mismo tiempo a git push.
Por otro lado, no me importa escribiendo:
$ git push && git push --tags
Cuidado con, como commented por Aseem Kishore
push = +refs/heads/*
se de fuerza desplaza al resto de sus ramas.
Esto me mordió hace un momento, así que FYI.
René Scheibe añade this interesting comment:
El parámetro
--follow-tags
es engañosa, ya que sólo en virtud de etiquetas.git/refs/tags
son considerados.
Si se ejecutagit gc
, las etiquetas se mueven de.git/refs/tags
a.git/packed-refs
. Luegogit push --follow-tags ...
ya no funciona como se esperaba.
Gracias por la respuesta detallada. Me temo que 'git push --tags:' no funciona para mí, pero 'git push origin --tags:' ** did **. No estoy seguro si eso es algo de configuración en mi parte o un error tipográfico en el tuyo. –
@Will: más un error tipográfico en mi lado. Lo he arreglado en mi respuesta. – VonC
El único comentario en la publicación que enlaza indica correctamente que la línea 'push = + refs/heads/*' * force * -pushes * all * your branches. Esto me mordió hace un momento, así que para tu información. –
Esto funciona para mí:
git push --tags origin master
- 1. ¿Las etiquetas de git también se presionan?
- 2. Empuje el Proyecto Git al Directorio Local
- 3. Trabajar con Git y SVN al mismo tiempo
- 4. ¿Cómo enumerar todas las etiquetas de Git?
- 5. Git diff entre las dos etiquetas dadas
- 6. cómo usar las etiquetas en GIT
- 7. ¿Puedo volver a establecer la base y aplastar las confirmaciones al mismo tiempo?
- 8. ¿Usar accept() y select() al mismo tiempo?
- 9. ¿Cómo pueden las consultas de django sql usar mayúsculas y minúsculas y contiene al mismo tiempo?
- 10. ¿Las lecturas y escrituras de C++ de un Atomic interno?
- 11. Cómo ACTUALIZAR y SELECCIONAR al mismo tiempo
- 12. jQuery: ¿objeto y función al mismo tiempo?
- 13. Apache ZooKeeper: cómo funcionan las escrituras
- 14. Estirable y Patrón UIImage al mismo tiempo
- 15. ¿Es necesario sincronizar las escrituras/lecturas de .NET SerialPort?
- 16. perlbrew y local :: lib al mismo tiempo?
- 17. usando onTouch y onCreateContextMenu al mismo tiempo
- 18. Git empuje para heroku
- 19. Git: Comprometerse a varias sucursales al mismo tiempo
- 20. Reproducir y grabar audio al mismo tiempo
- 21. VIM: ¿Guardar y ejecutar al mismo tiempo?
- 22. ¿Puedo seleccionar y actualizar al mismo tiempo?
- 23. Conexión USB y depuración al mismo tiempo
- 24. Clave primaria y externa al mismo tiempo
- 25. Foldmethod = marcador y sintaxis al mismo tiempo?
- 26. fadeOut() y slideUp() al mismo tiempo?
- 27. git svn - ¿Puedo usar git y svn al mismo tiempo? no necesita interacción entre git y svn
- 28. ¿Cuál es el modelo de datos utilizado para las etiquetas y los sinónimos de las etiquetas?
- 29. ¿Puedo usar RSpec para simular stdin/stdout para probar las lecturas y escrituras de la consola?
- 30. git - empujando las descripciones de las ramas al control remoto
¿Cuál es tu problema con 'git push && git push --tags'? – fuz
Nada en particular, es solo más lento ya que la conexión debe establecerse dos veces. –
Ver mi respuesta actualizada a continuación: hay una nueva opción '--follow-tags' desde git 1.8.3 – VonC