Gitで最新のタグを取得する方法

Bash,Git

はじめに

Git のローカルワークスペース内で最新のタグを取得するコマンドを紹介します。

検証環境

$ git version
git version 2.40.0

git describe --tags コマンドを使う

結論からいうと、 git describe --tags コマンドを使うことで最新のタグを取得できます。

実際に試してみる

ローカルに Git のローカルワークスペースを作成し動作を確認してみます。

まずは git init でワークスペースを作成します。

$ git init
Initialized empty Git repository in /Users/genzouw/work/.git/

適当なファイル(ここではtest.txt)を作成し、内容を編集した後、コミットします。

それぞれのコミットタイミングでタグを付与しておきます。
( それぞれ 122.1 というタグを付与 )

$ echo 1 >> test.txt
$ git add test.txt
$ git commit -m "commit 1"
$ git tag 1

$ echo 2 >> test.txt
$ git add test.txt
$ git commit -m "commit 2"
$ git tag 2 -m "Tag 2"

$ echo 3 >> test.txt
$ git add test.txt
$ git commit -m "commit 3"
$ git tag 2.1

git log で確認してみると、3 つのコミットとともにタグが付与されていることがわかります。

$ git log
commit f4bfbc05a0012674066a42e7d65f28364a0ded9d (HEAD -> main, tag: 2.1)
Author: genzouw <genzouw@gmail.com>
Date:   2023-04-21 07:26:52 +0900

    commit 3

commit f7c5236f69d1814cecca297d243d63ab2d8fc04a (tag: 2)
Author: genzouw <genzouw@gmail.com>
Date:   2023-04-21 07:25:47 +0900

    commit 2

commit 7fc2d84046f183387efef34087a1072b5ed9606b (tag: 1)
Author: genzouw <genzouw@gmail.com>
Date:   2023-04-21 07:25:18 +0900

    commit 1

ここで git describe --tags コマンドを実行します。

$ git describe --tags
$ 2.1

最新のタグが取得できました。

ひとこと

ちなみにこの方法、Go 製ツール Air の Makefile を見ていて知りました。

Bash,Git