En mi repositorio, he creado etiquetas usando los siguientes comandos.
git tag v1.0.0 -m 'finally a stable release'
git tag v2.0.0 -m 'oops, there was still a major bug!'
¿Cómo enumeras todas las etiquetas en el repositorio?
En mi repositorio, he creado etiquetas usando los siguientes comandos.
git tag v1.0.0 -m 'finally a stable release'
git tag v2.0.0 -m 'oops, there was still a major bug!'
¿Cómo enumeras todas las etiquetas en el repositorio?
Respuestas:
git tag
debería ser suficiente. Ver git tag
página del manual
Tu también tienes:
git tag -l <pattern>
Enumere etiquetas con nombres que coincidan con el patrón dado (o todos si no se da ningún patrón).
Al escribir "git tag" sin argumentos, también se enumeran todas las etiquetas.
Más recientemente (" ¿Cómo ordenar las etiquetas git? ", Para Git 2.0+)
git tag --sort=<type>
Ordenar en un orden específico.
El tipo admitido es:
- "
refname
" (orden lexicográfico),- "
version:refname
" o "v:refname
" (los nombres de etiqueta se tratan como versiones).Anteponga "-" para invertir el orden de clasificación.
Eso enumera ambos:
Nota: el artículo de git ready sobre etiquetado desaprueba la etiqueta ligera.
Sin argumentos, git tag crea una etiqueta "ligera" que es básicamente una rama que nunca se mueve.
Sin embargo, las etiquetas livianas siguen siendo útiles, tal vez para marcar una versión buena (o mala) conocida, o un montón de confirmaciones que puede necesitar usar en el futuro.
Sin embargo, probablemente no desee presionar este tipo de etiquetas .Normalmente, desea al menos pasar la opción -a para crear una etiqueta sin firmar, o firmar la etiqueta con su clave GPG a través de las opciones -s o -u.
Dicho esto, Charles Bailey señala que " git tag -m "..."
en realidad implica una etiqueta (opción" anotada) adecuada -a
, y no una etiqueta liviana. Entonces eres bueno con tu comando inicial.
Esto difiere de:
git show-ref --tags -d
Que enumera las etiquetas con sus confirmaciones (consulte " Lista de etiquetas Git, muestre los hash de confirmación sha1 ").
Observe el -d
para desreferenciar el objeto de etiqueta anotado (que tiene su propio compromiso SHA1) y mostrar el compromiso etiquetado real.
Del mismo modo, git show --name-only <aTag>
enumeraría la etiqueta y la confirmación asociada.
Para enumerar etiquetas prefiero:
git tag -n
La -n
bandera muestra la primera línea del mensaje de anotación junto con la etiqueta, o la primera línea de mensaje de confirmación si la etiqueta no está anotada.
También puede hacer git tag -n5
para mostrar las primeras 5 líneas de la anotación.
También git show-ref
es bastante útil, de modo que puede asociar directamente etiquetas con confirmaciones correspondientes :
$ git tag
osgeolive-6.5
v8.0
...
$ git show-ref --tags
e7e66977c1f34be5627a268adb4b9b3d59700e40 refs/tags/osgeolive-6.5
8f27e65bddd7d4b8515ce620fb485fdd78fcdf89 refs/tags/v8.0
...
hg tags
me gusta eso git show-ref
me da la etiqueta Y la revisión.
Y así es como encuentras las etiquetas remotas:
git ls-remote --tags origin
Intenta hacer git tag
que sea suficiente si no intenta hacerlo git fetch
entonces git tag
.
git tag
comando debería ser suficiente si solo desea ver una lista de etiquetas disponibles. Si no puede ver algunas etiquetas que cree que pueden existir en el control remoto, es posible que sus etiquetas locales no estén sincronizadas con el control remoto. En este caso, busque primero las últimas referencias / cabezas desde el control remoto git fetch
, seguido de las reales git tag
. Por lo general, ejecuto una línea como esta: $ git fetch -p && git tag
solo para asegurarme de que estoy viendo lo último y lo mejor.
Enumerar las etiquetas disponibles en Git es sencillo. Simplemente escriba git tag
(con opcional -l
o --list
).
$ git tag
v5.5
v6.5
También puede buscar etiquetas que coincidan con un patrón en particular.
$ git tag -l "v1.8.5*"
v1.8.5
v1.8.5-rc0
v1.8.5-rc1
v1.8.5-rc2
Obteniendo la última etiqueta en el repositorio de git
El comando encuentra la etiqueta más reciente a la que se puede acceder desde una confirmación. Si la etiqueta apunta a la confirmación, solo se muestra la etiqueta. De lo contrario, sufija el nombre de la etiqueta con el número de confirmaciones adicionales en la parte superior del objeto etiquetado y el nombre abreviado del objeto de la confirmación más reciente.
git describe
Con --abbrev
set to 0
, el comando puede usarse para encontrar el más cercano tagname
sin ningún sufijo:
git describe --abbrev=0
Otros ejemplos:
git describe --abbrev=0 --tags # gets tag from current branch
git describe --tags `git rev-list --tags --max-count=1` // gets tags across all branches, not just the current branch
Cómo podar etiquetas git locales que no existen en remoto
En pocas palabras, si está intentando hacer algo como git fetch -p -t
esto, no funcionará comenzando con la versión git 1.9.4
.
Sin embargo, hay una solución simple que todavía funciona en las últimas versiones:
git tag -l | xargs git tag -d // remove all local tags
git fetch -t // fetch remote tags
v0.1.0-rc1 fatal: No tags can describe '5db7534...4a94'. Try --always, or create some tags.
Para ver detalles sobre la última etiqueta disponible que a veces uso:
git show `git describe` --pretty=fuller
Si desea verificar el nombre de su etiqueta localmente, debe ir a la ruta donde creó la etiqueta (ruta local). Significa dónde has puesto tus objetos. Luego escriba el comando:
git show --name-only <tagname>
Mostrará todos los objetos bajo ese nombre de etiqueta. Estoy trabajando en Teradata y objeto significa vista, tabla, etc.
Puede enumerar todas las etiquetas existentes git tag
o puede filtrar la lista con git tag -l 'v1.1.*'
, donde*
actúa como comodín. Devolverá una lista de etiquetas marcadas con v1.1
.
Notará que cuando llama git tag
no puede ver el contenido de sus anotaciones. Para obtener una vista previa debe agregar -n
a su comando: git tag -n2
.
$ git tag -l -n2
v1.0 Versión de lanzamiento 1.0
v1.1 Versión de lanzamiento 1.1
El comando enumera todas las etiquetas existentes con un máximo de 3 líneas de su mensaje de etiqueta. Por defecto -n
solo muestra la primera línea. Para obtener más información, asegúrese de consultar también este artículo relacionado con la etiqueta .