La cuestión es git tag
espectáculos todas las etiquetas en todas las ramas, mientras que git describe
sólo utiliza etiquetas de confirmaciones que están disponibles en la corriente rama.
Aquí es un ejemplo (la razón por la que vine aquí en realidad):
$ git tag | tail -n3
v0.4.0
v0.4.1
v0.4.2
Se muestra la última etiqueta disponible es v0.4.2
, pero esta es mi salida del git describe
:
$ git describe --tags
v0.4.0-2-acd334c
I Estoy en desarrollo rama. Cuando cavo en el registro, veo de hecho las etiquetas más recientes no están disponibles en la rama actual:
$ git log --oneline --decorate=short | grep '\(tag\:' | head -n3
acd334c (tag: v0.4.0) Merge pull request #1061
988fe5e (tag: v0.3.6) Merge pull request #859
5f97274 (tag: v0.3.5) Merge pull request #646
Así que en mi caso, los desarrolladores decidieron crear una nueva rama liberación exclusivamente para el etiquetado de comunicados de los cuales resultados que la rama de desarrollo ya no está actualizada con las etiquetas.
Espero que ayude y gracias @eis por la idea de verificar los registros.
Ver también https://stackoverflow.com/questions/33851344/git-describe-fails-to-return-most-recent-annotated-tag – caw