gitコミットを含む最初のタグを見つける方法は?

gitコミットを含む最初のタグを見つける方法は?

興味のあるコミットのSHA IDがあり、そのコミットを含む最初のタグを見つける方法を知りたいです。

答え1

前述のように、これはを介して実行できますgit describe。ただし、特別な場合は、 git name-rev --tags --name-only <SHA>必要なものを正確に出力するを実行する方が便利です。バラより子名-rev(1)

答え2

git describe --contains "$committish"タグと親エントリ数に基づいて構築されたコミットへの参照を表示するので、~$n次のコマンドはコミットを含む最新のタグを表示します。

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

このコミットに含まれるタグがないとgit describe失敗します。 (短縮された)予定を受け取るには、その--alwaysオプションを追加してください。

関連情報