マージするときには、マージするブランチの変更内容の差分の確認を行ったり、
その内容について誰かに相談したいこともあるでしょう。
GitHub でプルリクエストすると、誰かにマージをお願いすることができ、
遠く離れた人にもマージ内容を確認してもらったり、相談することができます。
Linux 知識の要らない Git 講座 目次にもどる
ストーリー
ビジネスオーナーの A さんのお店のホームページの新しいバージョンを作成した
Web ディレクターの B さんは、
A さんに更新内容を確認してもらうためにプルリクエストすることにしました。
プルリクエスト作成フォームを開こう
手順
1. GitHub にアクセスします
https://github.com/ にアクセスします。
2. ページ左側 [Repositories] から前回プッシュしたリポジトリーをクリック
3. ページ左上 [New pull request] ボタンをクリック
すると、以下のようなページに遷移します。
このページは大きく分けて、上部のプルリクエスト作成フォームと
それ以降の変更内容の差分確認部分で構成されています。
プルリクエストを作成してみよう
プルリクエストするためのフォームは様々な機能がありますが、
ここではひとまずプルリクエストを作成することを目標にして
解説する項目を最低限にします。
手順
1. [Assignees] の歯車アイコンをクリックします
2. プルリクエストの担当者を選択します
[Assignees] はこのプルリクエストが誰に宛てたものかを入力します。
プルリクエストを作成したとき、ここで入力した GitHub ユーザーに
GitHub 上で通知されます。この [Assignees] は後でも変更可能です。
この例では、本来であれば A さんの GitHub アカウントを入力するべきですが
代わりに自分自身を入力しています。
3. タイトルを必要に応じて変更します
タイトルには、マージするブランチの最後のコミットのメッセージが
自動的に入力されます。
ブランチ全体の変更内容の概要がわかるよう、必要に応じて変更します。
4. 説明を入力します
説明は変更内容の意図や根拠を入力するように心がけます。
誰かからの依頼で行った変更の場合は、
依頼元なども入力しておくと後で確認しやすいでしょう。
また、この入力欄は「Markdown」という記法で入力するようになっています。
入力欄右下のアイコンをクリックすると
Markdown 記法の GitHub 公式ドキュメントを確認できます。
この Markdown 記法は最初から憶える必要はありません。
主要な記法は入力欄の上部にボタンとして用意されているので
こちらから入力すると良いでしょう。
Markdown 記法は GitHub 以外でも
様々なシステムやサービスで利用されていますが、
システムやサービスごとに「方言」があり、
たとえ他のシステムやサービスで使える記法でも
GitHub 公式ドキュメントに記載がなければ
表示に反映されないことに注意しましょう。
5. [Preview] タブをクリックします
説明の入力を終えたら、フォームを投稿する前に
[Preview] タブでどのように表示されるか確認しておきましょう。
6. どのように表示されるか確認します
この例では “-” で始まる行は箇条書きとして表示されています。
7. [Create pull request] ボタンをクリックします
想定どおりに表示されることが確認できたら
[Create pull request] ボタンをクリックします。
次のようなページに遷移したら、プルリクエストの作成は完了です。
プルリクエストのページの機能を確認しよう
プルリクエストのページも様々な機能が実装されていますが、
ここではプルリクエストの理解に必要不可欠な 3 つの機能のみ解説します。
コメント投稿フォーム
プルリクエストのページはスレッド形式になっていて、
コメント投稿フォームからコメントを投稿することができます。
このコメント投稿フォームには
プルリクエストを閉じるための [Close pull request] ボタンもあります。
このブランチの変更内容が不要になった場合や、
別のブランチをマージすることで要件が満たされる場合などは
このボタンでプルリクエストを閉じることができます。
変更内容の差分確認タブ
ページ上部の [Files changed] タブをクリックすると
マージする変更内容の差分を確認することができます。
プルリクエストをマージするボタン
[Merge pull request] ボタンをクリックすると
このマージを実行することができます。
プルリクエストをマージしてみよう
マージする前の、今のリポジトリーを PC にクローンして index.html を開くと
以下のようなページが表示されるはずです。
では、いよいよプルリクエストをマージしてみましょう。
[Merge pull request] ボタンをクリックします。
新たなフォームが表示されるので、 [Confirm merge] ボタンをクリックします。
フォームが次のような表示になったら、マージは完了です。
再度リポジトリーを PC にクローンして index.html を開くと
次のようなページが表示されれば成功です。
マージし終わったブランチを削除しよう
ところで、 クローンしたリポジトリーのログを確認すると
feature ブランチが残っていますが、
このブランチは master ブランチにマージされたので
ブランチを削除しても編集履歴は残り続けます。
ブランチが増えると管理が煩雑になるので
必要なくなったブランチは削除しましょう。
ローカルリポジトリーでも削除できますが、
先ほどのプルリクエストのページでマージした後の
[Delete branch] ボタンをクリックしてみましょう。
その後、 クローンし直すと 「origin/feature」ブランチはなくなっています。
以上でプルリクエストの作成とマージが完了しました。
Linux 知識の要らない Git 講座 目次にもどる