未来エンジニア養成所Blog

プログラミングを皆に楽しんでもらうための情報をお届けします。

【Git&GitHub】タグを作成する(git tagコマンド)

title


タグを作成する

今回はタグを作成する方法について解説します。


Gitのタグには2種類あって、注釈付き版のタグと、軽量版のタグという2種類のタグがあります。

それぞれの違いはこれから解説しますが、ざっくりとイメージをお伝えすると、注釈付きのタグというのが正式なタグでしっかりと情報がついたタグ、軽量版のタグというのが情報量を減らした省略形式のタグになります。

基本的には注釈付きのタグの方が情報量がしっかりしているので、こちらを使うことをオススメします。


注釈付き版のタグ

それではまず、注釈付きのタグを作る方法です。

注釈付きタグを作成する方法は

$ git tag -a [タグ名] -m "[メッセージ]"

と入力します。


たとえば、

$ git tag -a 20210901_01 -m “version 20210901_01”

と入力します。


「-a」というのはannotate(注釈)の略です。

こちらの「-a」オプションを付けると注釈付きタグを作成すると言う意味になります。


「-m」はmessageの略です。

「-m」オプションを付けるとエディタを立ち上げずにメッセージを入力することができます。

この「-m」オプションは付けなくても大丈夫なのですが、そうするとエディタが立ち上がってそこでメッセージを入力する形になります。


それではイメージで押さえておきましょう

注釈付き版のタグ


前回と同じように「コミット1」「コミット2」「コミット3」と3つあって、「コミット1」に「20210901_01」というタグを付けたとします。

これを「-a」オプションを付けて注釈付きタグでタグを作成した場合、「20210901_01」というようなタグの名前だけでなく、「-m」オプションで付けたコメントであったり、さらには署名も自動的に付けられています。


署名というのは誰がこのタグを付けたかということです。

このようにタグに名前に加えてコメントやそのタグを付けた人の署名を付けられるのが注釈付きタグになります。


軽量版のタグ

それでは次に軽量版のタグを作成する方法です。

軽量版タグを作成するコマンドは、

$ git tag [タグ名]

になります。


例えば

$ git tag 20210901_01

となります。


軽量版のタグと注釈付き版のタグはどのように違うかというと、「-a」オプションがついているかどうかです。

「-a」オプションを付けないと軽量版タグを作成するということになります。


軽量版タグもイメージで押さえておきましょう。

軽量版のタグ


前の図と違うのは、軽量版タグを作成した場合、名前だけしか付いていないことです。

注釈付きのタグですと、コメントや署名もついていたのですが、軽量版だと名前だけがついていることなります。


このように軽量版タグだと注釈付き版のタグに比べて情報量が減るので、基本的には注釈付きのタグを付けることをオススメします。


タグは今までは今いるブランチの最新のコミットにタグをつける方法について確認しましたが、昔のコミットに後からタグ付けする方法についても確認します。


昔のコミットに後からタグ付けするためには

$ git tag [タグ名] [コミット名]

と入力します。


例えば

$ git tag 20210901_01 8a6cbc4

と付けます。


この「8a6cbc4」というのは、昔のコミットです。


このように昔のコミットのコミットIDに対しても後からタグを付けることができます。


タグの詳細を表示

最後にタグのデータ、タグの詳細を表示する方法について確認します。


そのコマンドは

$ git show [タグ名]

になります。


たとえば

$ git show 20210901_01

となります。


このコマンドを入力するとタグのデータと関連付けられたコミットを表示します。

タグの詳細


どういうことかというと、例えば今この状況で「git show 20210901_01」と入力すると、タグ付けした人の情報や、タグ付けした日時、注釈メッセージ、コミットが表示されます。

こういったタグのデータを表示したい場合は、「git show」コマンドを使いましょう。


実際にやってみよう

それではターミナルを開いて実際にタグを付けてみましょう。


今回は注釈付きのタグを作成していきます。

$ git tag -a "20210901" -m "version 20210901"

これでタグが作られました。


タグが作られたかを確認してみましょう。

$ git tag
20210901

そうすると作成したタグが表示されます。

このようにgit tagコマンドを使うことで、タグの一覧を表示することができます。


それではこのタグの詳細を確認してみましょう。

$ git show 20210901
tag 20210901
Tagger: piketa <xxxxx.xxxxx@icloud.com>
Date:   Wed Sep 1 16:24:47 2021 +0900

version 20210901

commit 55c46b40d7c0ac476e9b8efa1065928b2366958e (HEAD -> main, tag: 20210901, origin/main)
Author: piketa <xxxxx.xxxxx@icloud.com>
Date:   Wed Sep 3 15:06:40 2021 +0900

    third.htmlを追加

diff --git a/third.html b/third.html
new file mode 100644
index 0000000..e69de29

するとこのタグのタグ名が表示されて、そのタグを付けた人の名前、それと日付、タグのメッセージが表示されています。

その下はコミットの情報になります。


このタグが紐付けられたコミットのコミットID、そしてコミットのAuthorとその日付、そして最後にコミットのメッセージというようにタグが紐付けられたコミットの情報が表示されています。


このように「git tag」コマンドを使うことで、タグを作成して、そしてそのタグの内容を確認するやり方について確認しました。

タグはリリースしたポイントにタグ名を付けておくことで、バグが起きた時に後で切り戻しがしやすかったり、いつ何をリリースしたのかが分かりやすくするので、是非リリースポイントにタグをつけるような方法で使って見てください。


参考図書



独学で挫折しそうになったら、オンラインプログラミングスクール
未来エンジニア養成所Logo



あわせて学習したい

phoeducation.work