本記事では以下の内容を取り上げます。
- Git tagの概要やコマンド
- GitHub release tagについて
どなたかのご参考になれば幸いです。
以下、目次となります。
Git tag
Git tagについて
今更感もありますが、次の内容です。
- Gitのタグ(tag)は、特定のコミットをマークするために使用される参照(リファレンス)です。
- 主な目的は、リリースやマイルストーンなど、重要なポイントをマークすることです。
Git tagコマンド
# ローカルのタグ確認
git tag
# ローカルのタグ確認(コメント付き)
git tag -n
# リモートのタグ確認
git ls-remote --tags
# タグ作成
git tag タグ名
git tag タグ名 指定ハッシュ
※ハッシュ未指定の場合はHEADにタグが付きます
# タグ作成(コメント付き)
git tag -a タグ名 -m "コメント"
git tag -a タグ名 -m "コメント" 指定ハッシュ
※ハッシュ未指定の場合はHEADにタグが付きます
# ローカルタグをリモートに反映(全部)
git push --tag
# ローカルタグをリモートに反映(指定)
git push origin タグ名
# ローカルのタグ削除
git tag -d タグ名
# リモートのタグ削除
git push origin --delete タグ名
# タグの同期(リモートに合わせる)
git fetch --prune --prune-tags
※例えばリモートから削除済でローカルに残っている場合、本コマンドを使えばローカルのタグを削除できます。
※また、リモートに未反映のローカルタグも削除されます。
GitHub release tag
GitHub release tagとは?
GitHubの独自機能で、tagの装飾機能のようなものです。
- 変更点の要約を載せれます。
- ファイル添付も出来ます。
→ 容量はなんと2GBまで可能なので、関連のバイナリファイルを載せたりすることも出来ます。
(なんか雑な説明・・・)
GitHub release tagの例
実際に触ってみます。
まずはGitHubから見た通常のタグ一覧画面(Tags)です。
ちなみに、タグが該当ソースファイルをzipやtar.gz形式でダウンロード可能となっています。これもGitHubによる機能支援ですね。
続いて「Releases」より「Create a new release」よりリリースを作成してみます。
適当にタイトル、本文を入れます。ファイル添付も可能です。
※本文の自動生成も可能です。
→ 過去のコミット情報やPull Requestを吸い出していい感じの内容で作ってくれます。
リリースタグを作りました。
このように特定のタグをリリースタグとして設定出来ました。
- ドラフト作成して後から特定のタグに関連付けることが可能です(先行作成が可)。
- 既存タグに関連付けることが出来ます。
純粋なGitのタグだと簡単なコメントしか付けることが出来ませんが、Release Tagを使うと、色々な関連情報を載せることが出来ますし、目立たせることが出来ます。
まとめ
GitのTag機能、GitHubのRelease Tag機能についてご紹介しました。
- Tagは特定のコミットをマークするための機能です。
- GitHubのRelease TagはTag内の任意タグを目立たせて、コメントだけでなくリリース内容やファイル添付も可能な機能です。
最後までご覧いただきありがとうございました。
コメント