本記事では以下の内容を取り上げます。
- Git tagの概要やコマンド
- GitHub release tagについて
どなたかのご参考になれば幸いです。
![](https://na7log.com/wp-content/uploads/2022/02/sky_ava1n_face240.jpg)
以下、目次となります。
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まで可能なので、関連のバイナリファイルを載せたりすることも出来ます。
![](https://na7log.com/wp-content/uploads/2022/02/sky_ava3k_face2.jpg)
(なんか雑な説明・・・)
GitHub release tagの例
実際に触ってみます。
まずはGitHubから見た通常のタグ一覧画面(Tags)です。
![](https://na7log.com/wp-content/uploads/2023/05/image-15.png)
ちなみに、タグが該当ソースファイルをzipやtar.gz形式でダウンロード可能となっています。これもGitHubによる機能支援ですね。
続いて「Releases」より「Create a new release」よりリリースを作成してみます。
![](https://na7log.com/wp-content/uploads/2023/05/image-16-1024x348.png)
適当にタイトル、本文を入れます。ファイル添付も可能です。
※本文の自動生成も可能です。
→ 過去のコミット情報やPull Requestを吸い出していい感じの内容で作ってくれます。
![](https://na7log.com/wp-content/uploads/2023/05/image-17-1024x723.png)
リリースタグを作りました。
![](https://na7log.com/wp-content/uploads/2023/05/image-18-1024x545.png)
このように特定のタグをリリースタグとして設定出来ました。
- ドラフト作成して後から特定のタグに関連付けることが可能です(先行作成が可)。
- 既存タグに関連付けることが出来ます。
純粋なGitのタグだと簡単なコメントしか付けることが出来ませんが、Release Tagを使うと、色々な関連情報を載せることが出来ますし、目立たせることが出来ます。
まとめ
GitのTag機能、GitHubのRelease Tag機能についてご紹介しました。
- Tagは特定のコミットをマークするための機能です。
- GitHubのRelease TagはTag内の任意タグを目立たせて、コメントだけでなくリリース内容やファイル添付も可能な機能です。
![](https://na7log.com/wp-content/uploads/2022/02/sky_ava1u_body_face2.jpg)
最後までご覧いただきありがとうございました。
コメント