Comment trouver la première balise contenant un commit git?

Réponses:

8

Comme indiqué précédemment, cela peut être fait avec git describe. Dans votre cas particulier, cependant, il peut être plus pratique de l'exécuter git name-rev --tags --name-only <SHA>, qui génère exactement ce que vous voulez. Voir git-name-rev (1) .

user3188445
la source
6

git describe --contains "$committish"affiche une référence à la validation construite sur une balise plus un ~$nnombre d'ancêtres, donc la commande suivante affiche la balise la plus récente qui contient une validation:

git describe --contains "$committish" | sed 's/~.*//'

S'il n'y a pas de balise contenant cette validation, git describeéchouera. Si vous souhaitez obtenir le commit (abrégé) à la place, ajoutez l' --alwaysoption.

Gilles 'SO- arrête d'être méchant'
la source