1. ホーム
  2. git

[解決済み] Git タグリスト、コミット sha1 ハッシュの表示

2022-07-31 06:29:21

質問

ということで git tag コマンドは現在の git タグを一覧表示します。

tag1
tag2

git tag -n タグのメッセージを表示します。

tag1  blah blah
tag2  blah blah

タグ1 & タグ2のハッシュを取得する最良の方法は何でしょうか?

どのように解決するのですか?

TagオブジェクトのSHA1ハッシュを持つgitタグを取得するには、以下を実行します。

git show-ref --tags

すると、次のような出力になります。

0e76920bea4381cfc676825f3143fdd5fcf8c21f refs/tags/1.0.0
5ce9639ead3a54bd1cc062963804e5bcfcfe1e83 refs/tags/1.1.0
591eceaf92f99f69ea402c4ca639605e60963ee6 refs/tags/1.2.0
40414f41d0fb89f7a0d2f17736a906943c05acc9 refs/tags/1.3.0

各行はタグのSHA1ハッシュで、その後にタグ名の前に refs/tags/ .

タグオブジェクトではなく、コミットのSHA1ハッシュが欲しい場合は、実行することができます。

git show-ref --tags -d

というような出力になります。

0e76920bea4381cfc676825f3143fdd5fcf8c21f refs/tags/1.0.0
3e233dd8080617685992dc6346f739a6f6396aae refs/tags/1.0.0^{}
5ce9639ead3a54bd1cc062963804e5bcfcfe1e83 refs/tags/1.1.0
09173980152a7ed63d455829553448ece76c6fdc refs/tags/1.1.0^{}
591eceaf92f99f69ea402c4ca639605e60963ee6 refs/tags/1.2.0
56d803caaa8a93a040b7be0b8a36abdc4ce8c509 refs/tags/1.2.0^{}
40414f41d0fb89f7a0d2f17736a906943c05acc9 refs/tags/1.3.0
1bdf628a70fda7a0d840c52f3abce54b1c6b0130 refs/tags/1.3.0^{}

で終わる行は ^{} で終わる行は、そのタグが指す実際のコミットの SHA1 ハッシュで始まります。