Gitのタグとは?
Gitのタグとはコミットにわかりやすい名前をつけたエイリアスです。
これによって履歴内の特定のコミットを参照しやすくなります。
タグの種類
Gitのタグにはいくつかの種類が存在します。
軽量タグ(Lightweight Tags)
軽量タグは特定のコミットに名前のみを付ける事ができます。
注釈付きタグ(Annotated Tags)
注釈付きタグではコミットに「名前」・「コメント」・「署名」等の情報を付ける事ができます。
注釈付きタグの詳細はこちらを参考にしてください。
タグを作成する
軽量タグ
以下コマンドで先頭のコミットにtag-name
の名前を付ける事ができます。
$ git tag <tag-name>
注釈付きタグ
上記で記載した通り注釈付きのタグには名前以外の付随情報を付ける事が可能です。
以下のように-a
で注釈付きタグを作成する事を明示し、-m
でタグにメッセージを付ける事が可能です。
(作成者や作成日時はタグ作成時に自動で付与されます。)
$ git tag -a <tag-name> -m "message"
HEAD以外のコミットにタグを付ける
コミットハッシュを指定する事で最新のコミット以外にも自由自在にタグを付ける事ができます。
$ git tag -a <tag-name> <commit-hash> -m "message"
以下に例を示します。
$ git tag -a v0.1.0 9fceb02 -m "Initial release"
タグのリストを表示する
以下のコマンドで作成したタグのリストを表示できます。
$ git tag
特定のタグのみ表示したい場合以下のようなコマンドが使用できます。
(下記ではv1.0を含むタグのみ表示します。)
$ git tag -l "v1.0"
タグをリモートで共有する
特定のタグを共有する
以下のコマンドで特定のタグをリモートで共有できます。
$ git push origin <tag-name>
全てのタグを共有する
以下のコマンドでローカルの全てのタグをリモートで共有できます。
$ git push origin --tags
タグを削除する
以下コマンドで特定のタグを削除する事ができます。
ローカルのタグの削除
$ git tag -d <tag-name>
リモートのタグの削除
$ git push origin --delete <tag-name>