2009-06-30 29 views

Respuesta

499
git tag 

debería ser suficiente. Ver git tag man page


También tiene:

git tag -l <pattern> 

etiquetas de lista con nombres que coinciden con el patrón dado (o todos si no se da el patrón).
Al escribir "git tag" sin argumentos, también se enumeran todas las etiquetas.


Más recientemente ("How to sort git tags?", para Git 2.0+)

git tag --sort=<type> 

Ordenar en un orden específico.

tipo soportado es:

  • "refname" (orden lexicográfico),
  • "version:refname" o "v:refname" (nombres de las etiquetas son tratados como versiones).

Prefijo "-" para invertir el orden de clasificación.


que las dos listas:

  • annotated tags: objetos completos almacenados en la base de datos de Git. Son sumarios; contener el nombre, el correo electrónico y la fecha del etiquetador; tener un mensaje de etiquetado; y puede ser firmado y verificado con GNU Privacy Guard (GPG).
  • lightweight tags: sencilla puntero a una ya existente cometer

Nota: los git ready article on tagging desaprueba etiqueta ligero.

Sin argumentos, la etiqueta git crea una etiqueta "liviana" que es básicamente una rama que nunca se mueve.
Las etiquetas ligeras siguen siendo útiles, tal vez para marcar una versión buena (o mala) conocida, o un montón de confirmaciones que pueda necesitar usar en el futuro.
Sin embargo, es probable que no desee insertar 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 mediante las opciones -s o -u.


Dicho esto, Charles Bailey señala que un 'git tag -m "..."' en realidad implica una etiqueta adecuada (sin firmar anotado) (opción '-a'), y no uno ligero. Entonces eres bueno con tu comando inicial.


Esto difiere de:

git show-ref --tags -d 

que enumera las etiquetas con sus confirmaciones (ver "Git Tag list, display commit sha1 hashes").
Observe el -d para desreferenciar el objeto de etiqueta anotado (que tiene su propia confirmación SHA1) y mostrar la confirmación etiquetada real.

De forma similar, git show --name-only <aTag> mostraría la etiqueta y la confirmación asociada.

+5

Es probablemente la pena añadir que -m o -F implica -a (si no de -a, -s o -u se suministran explícitamente. No puede tener un mensaje de etiqueta sin crear un objeto de etiqueta 'adecuada' –

+1

@Charles: buen punto. He actualizado mi respuesta en consecuencia – VonC

+0

Maybe '--name -only' también se puede mencionar aquí, http://stackoverflow.com/a/43870965/54964 –

136

lista Para etiquetas Prefiero:

git tag -n 

La bandera -n muestra la primera línea del mensaje de anotación junto con la marca, o la primera línea de cometer mensaje si la etiqueta no está anotado.

También puede hacer git tag -n5 para mostrar las primeras 5 líneas de la anotación.

5

Intente hacer git tag debería ser suficiente, si no, intente hacer git fetch luego git tag.

+0

¿Qué quieres decir? – toto

+3

Creo que lo que quiere decir es esto: Ejecutar el comando 'git tag' debería ser suficiente si solo quieres ver una lista de etiquetas disponibles. Si no puede ver algunas etiquetas que cree que pueden existir en remoto, es posible que sus etiquetas locales no estén sincronizadas con las remotas. En este caso, busque los últimos refs/heads desde el primer 'git fetch' remoto, seguido por el' git tag' real. Por lo general, ejecuto un contrato de una sola línea como este: '$ git fetch -p && git tag' solo para asegurarme de que estoy viendo lo último y mejor. – demisx

32

también git show-ref es bastante útil, por lo que se puede asociar directamente etiquetas con el corresponsal compromete:

$ git tag 
osgeolive-6.5 
v8.0 
... 

$ git show-ref --tags 
e7e66977c1f34be5627a268adb4b9b3d59700e40 refs/tags/osgeolive-6.5 
8f27e65bddd7d4b8515ce620fb485fdd78fcdf89 refs/tags/v8.0 
... 
+1

Al estar acostumbrado a las etiquetas hg de Mercurial, me gusta que 'git show-ref' me dé la etiqueta Y la revisión. – Justin

+1

Esto fue extremadamente útil para tratar de extraer información sobre las etiquetas mediante programación. –

4

Para ver detalles sobre la última etiqueta disponibles a veces uso:

git show `git describe` --pretty=fuller 
1

Si desea comprobar el nombre de la etiqueta localmente, debe dirigirse a la ruta en la que ha creado etiqueta ted (ruta local). Significa dónde has puesto tus objetos. Entonces comando type:

git show --name-only <tagname> 

Se mostrarán todos los objetos bajo que el nombre de la etiqueta. estoy trabajando en el Teradata y objeto significa punto de vista, etc mesa

0

Y aquí es cómo encontrar las etiquetas remotas:

git ls-remote --tags origin

Cuestiones relacionadas