Il s'agit de git tag
spectacles tous dans toutes les branches, tandis que git describe
n'utilise que les tags sur les commits qui sont disponibles dans la base de données actuelle de branche .
Voici un exemple (la raison pour laquelle je suis venu ici en fait) :
$ git tag | tail -n3
v0.4.0
v0.4.1
v0.4.2
Il indique que la dernière balise disponible est v0.4.2
mais c'est ce que j'ai obtenu à partir de git describe
:
$ git describe --tags
v0.4.0-2-acd334c
Je suis sur la branche développement. Quand je creuse dans le journal, je vois que les tags les plus récents ne sont pas disponibles sur la branche actuelle :
$ 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
Dans mon cas, les développeurs ont donc décidé de créer un nouveau fichier libération exclusivement pour le marquage des versions, ce qui a pour conséquence que la branche development n'est plus à jour avec les tags.
J'espère que cela vous aidera et je remercie @eis pour l'idée de vérifier les journaux.