====== GitHub タグとリリースの作成 ====== --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-07-02// [[github:top|GitHub に戻る]] 本章は、「[[github:branch|GitHub Eclipseによるブランチの操作]]」の続編です。今回はEclipseによるタグの作成と、GitHubによるリリースの作成について説明します。タグの作成に関しては、社内のGitサーバーをご利用の場合もEclipseの操作は同じだと思います。 [[https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E5%9F%BA%E6%9C%AC-%E3%82%BF%E3%82%B0|タグ]]はGitの機能で、コミットに付けられた名前です。Gitのコミットはハッシュ値によって識別されますが、タグはこのハッシュ値の別名と考えると分かり易いかもしれません。Gitから必要なバージョンを取得するにるには、ブランチやタグ(またはコミットハッシュ値)が使用できます。GitHubではタグの付け方は、[[https://semver.org/lang/ja/|セマンティック バージョニング]]に準拠することが推奨されています。 一方、[[https://docs.github.com/ja/github/administering-a-repository/about-releases|リリース]]の方はGitHubの機能です。リリースは、ソフトウェア、リリースノート、バイナリファイルへのリンクをパッケージ化してユーザが利用しやすくする為のもので、アジャイル開発的には、繰り返し行われる一連の短い開発工程の成果物をパッケージ化して、デプロイ可能なソフトウェアのイテレーションを提供する機能であるとも言えます。 GitHubではリリース作成時、タグを指定するようになっているので、リリースを作成する前に、コミットにタグを付ける必要があります。タグの作成は、Gitクライアント(Eclipse)だけでなく、GitHubからもリリース作成時に同時にタグを作成できます。 本章の前提は、[[github:branch|前章]]と同じで、[[github:config|GitHubのアカウント]]と以下のクライアント環境が必要です。Gitクライアントには[[git2:client:windows:eclipse|Eclipse]]を使用します。 クライアント環境 * Windows10 Pro * Eclipse 2019-12 Version 4.14 関連記事 * [[github:config|GitHub 環境構築]] * [[github:email|GitHub メールの設定]] * [[github:profile|GitHub プロフィールの設定]] * [[github:basic|GitHub Eclipseによるリポジトリの基本操作]] * [[github:branch|GitHub Eclipseによるブランチの操作]] * GitHub タグとリリースの作成 * [[github:collaborator|GitHub コラボレータの招待]] * [[github:publish|GitHub ソースコードの公開]] リンク * https://github.com/ --- GitHubの本家 * [[https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E5%9F%BA%E6%9C%AC-%E3%82%BF%E3%82%B0|Git の基本 - タグ]] --- Pro Git bookより * https://semver.org/lang/ja/ --- セマンティック バージョニング 2.0.0 (日本語) * [[https://docs.github.com/ja/github/administering-a-repository/releasing-projects-on-github|GitHub でプロジェクトをリリースする]] --- GitHubヘルプより ---- ===== 前提条件 ===== ここでの説明は[[github:branch|前章]]から続いており、Eclipseによるタグの作成方法を述べる前に、前提となるリポジトリとブランチの条件を記載しておきます。 Gitサーバ( GitHub )に作成済のリポジトリとブランチは以下の通りです: [{{:github:release:github-tag00.png?nolink|}}] * リポジトリ:''hello-world'' * ブランチ: 4 branches * ''master'' --- マスターブランチ * その他に作業済のブランチが3つあります Gitクライアントは、Eclipseで、プロジェクト名は ''hello-world'' です。Eclipse側(ローカルリポジトリ)には以下のブランチがあります。 【 ローカルリポジトリ(Eclipse) 】 * リポジトリ:''hello-world'' * ローカル・ブランチ * ''master'' --- マスターブランチ * リモート・トラッキング * ''origin/master'' --- masterのリモート追跡ブランチ \\ ===== タグ ===== Gitの[[https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E5%9F%BA%E6%9C%AC-%E3%82%BF%E3%82%B0|タグ]]は以下の2種類があります。 * **注釈付きのタグ** --- Annotated \\ チェックサムが付き、タグを作成した人の情報(名前、メールアドレス)、作成日時、注釈が保持されます。 これは、主にリモートブランチでリリース情報の一部として利用されます。 * **軽量版のタグ** --- Lightweight \\ コミットとの関連付けを保持するだけのタグで、それ以上の情報は保持されません。これは、主にローカールブランチでコミットの名前付けの為に利用されます。 どちらの種類のタグにも(通常は注釈付きのタグに対して)、GPG秘密鍵による署名をすることができます。 Eclipse(Egitプラグイン)では、注釈付きのタグのみサポートされています。また、タグへの署名機能はありません。注釈付きのタグに署名を行うには、[[https://docs.github.com/ja/github/authenticating-to-github/signing-tags|GitHubのタグへの署名機能]]を使用できます。 本節では、Eclipseからのタグの作成とGitHubへのタグのプッシュについて説明しますが、GitHubではリリース作成時に同時にタグを作成できます。リリース用のタグは、GitクライアントではなくGitHubで作成する方が良いように思います。必要に応じて使い分けて下さい。 \\ ==== Eclipseでのタグの作成 ==== Eclipseの[プロジェクト・エクスプローラー]でプロジェクト(hello-world)を右クリックし、[チーム][拡張][タグの作成...]を選択して下さい。 [{{:github:release:github-tag01.png?nolink|}}] ■ [タグ名]を入力します。