この記事は
GitHubの次の機能を関連付けて扱う方法について書いた記事です。
- Milestone
- Issue
- Pull Request
大まかな流れは次の通りです。
- Milestoneを設定し、その中にIssueを作成
- 作成したPull RequestにIssueを紐付け、Pull Requestが閉じると同時にIssueも閉じる
特に転職活動用に個人開発でオリジナルアプリを作っている方は、これをやっておくと擬似チーム開発経験ができ、面接で強いアピール材料になりますのでぜひトライしてみてください。
1. Milestoneの設定
その名の通り、マイルストーン(開発期限)を設定します。
「〇〇プロジェクト」とか「〇〇アプリの開発」とかですね。
画像左上のIssuesのタブを開き、Milestonesをクリックします。
New milestoneかCreate a Milestoneをクリックします(どちらも同じ)。
Title(タイトル)、Due Date(期限)、Description(説明)を記入し、Create milestoneをクリックします。
2. Issueの作成
Issueの作成画面になり、右枠のMilestoneが先ほど作ったものに設定された状態になっています。
名前とコメント(任意)を記入し、Submit new issueをクリックします。
名前は、Issueなので〇〇機能とか〇〇作成などが一般的かと思います。
ちなみに別画面からIssueを作成し、Milestoneを後から付けたい場合は、次のようにMilestoneの歯車マークから選択して付与することができます。
3. Pull RequestとIssueを紐付ける
ローカルで変更を加えたブランチをリモートリポジトリにプッシュすると、GitHub上に次のような表示が現れます。
このCompare & pull requestをクリックすると、プルリクエストの作成画面になります。
プルリクエストの作成画面において、まずは送り元と送り先を確認します。
下の画像だと、compare:xxブランチからbase:masterブランチへのプルリクエストであることを示しています。
そしてタイトルと説明を書きます。
この説明のところに、**Closes #n<紐付けたいIssueの番号>**と書くことで、プルリクエストとIssueを紐付けることができます。
上の画面では、Issue #1と紐付けています。
この状態でCreate pull requestを押します。
すると、表示されたページのLinked issuesの項目にIssueが紐付いていることが確認できます。
このプルリクエストをマージし、プルリクエストが閉じると紐付いていたIssueも同時に閉じることができます。
ちなみにプルリクエストをマージせずに閉じると、Issueは閉じられずにOpenのまま残ります。
以上です!