usar tag repositorio remove qué practices podemos partir para otro oneline nuevo log hace crear best git tags git-tag

git - tag - qué podemos usar para crear un nuevo repositorio a partir de otro



¿Cómo listar todas las etiquetas junto con el mensaje completo en git? (6)

Está lejos de ser bonito, pero puedes crear un script o un alias que haga algo como esto:

for c in $(git for-each-ref refs/tags/ --format=''%(refname)''); do echo $c; git show --quiet "$c"; echo; done

Quiero que git liste todas las etiquetas junto con la anotación completa o el mensaje de confirmación. Algo como esto está cerca:

git tag -n5

Esto hace exactamente lo que quiero, excepto que solo se mostrará hasta las primeras 5 líneas del mensaje de etiqueta.

Supongo que puedo usar un número muy grande. ¿Cuál es el número más alto que puedo usar aquí? ¿Es lo mismo en todas las computadoras?

ACTUALIZACIÓN : He tenido mucho tiempo para pensar en esto, y ahora creo que no necesariamente quiero mostrar todo el mensaje si es extraordinariamente largo. Algo como esto parece funcionar bien para mí:

git tag -n99

Si el mensaje de etiqueta es realmente más largo que 99 líneas, no quiero verlo todo. Pero Git es extremadamente complejo y flexible. ¿En qué casos esta no sería la mejor solución? Noté que muchas de las soluciones publicadas utilizaban la opción -l otión, pero ¿no es solo para especificar un patrón para buscar?


Intente esto, enumerará todas las etiquetas junto con anotaciones y 9 líneas de mensaje para cada etiqueta:

git tag -n9

también puede usar

git tag -l -n9

Si hay etiquetas específicas para listar:

git tag -l -n9 v3.*

(por ejemplo, el comando anterior solo mostrará etiquetas que comiencen con "v3")

-l, --list Listar etiquetas con nombres que coincidan con el patrón dado (o todos si no se da ningún patrón). Ejecutar "git tag" sin argumentos también lista todas las etiquetas. El patrón es un comodín de shell (es decir, se combina con fnmatch (3)). Se pueden dar múltiples patrones; Si alguno de ellos coincide, se muestra la etiqueta.


Prefiero hacer esto en la línea de comandos, pero si no te importa una interfaz web y usas GitHub, puedes visitar https://github.com/user/repo/tags y hacer clic en "..." a continuación a cada etiqueta para mostrar su anotación.


Sólo el último mensaje de etiqueta:

git cat-file -p $(git rev-parse $(git tag -l | tail -n1)) | tail -n +6


La respuesta de Mark Longair (usando git show ) está cerca de lo que se desea en la pregunta. Sin embargo, también incluye la confirmación señalada por la etiqueta, junto con el parche completo para esa confirmación. Dado que la confirmación puede no estar relacionada con la etiqueta (es solo una confirmación que la etiqueta está intentando capturar), esto puede ser indeseable. Creo que lo siguiente es un poco mejor:

for t in `git tag -l`; do git cat-file -p `git rev-parse $t`; done


git tag -n99

Corto y dulce. Esto mostrará una lista de hasta 99 líneas del mensaje de anotación / confirmación. Aquí hay un enlace a la documentación oficial de git tag: http://git-scm.com/docs/git-tag