見出し画像

GitHubでプルリクしてみよう:「Compare & pull request」のボタンが見当たらない場合

「わかばちゃんと学ぶGit使い方入門」の読者様より、GitHub上で「Compare & pull request」ボタンが見当たらないという事例を報告いただきました。

どうやらタイミングによって表示されないことがあるようです。
次の2種類の方法で対応してみてください。

1、ブラウザの画面を更新してみる

あなたがクローンしてきたリポジトリのトップページを開きます。
https://github.com/あなたのユーザ名/pull-request-practice/
というURLです。
ブランチをプッシュ後、そのままでは表示されないことがありますので、まずは再読み込み(リロード)してみましょう。

Windowsなら「F5」キー
Macなら「command + R キー」で再読み込みできます。


2、ブランチ一覧からプルリクエストする

それでもボタンが現れなかった場合の、2つ目の方法を紹介します。

①まず上部のタブメニューから「Pull requests」タブを開きます。
右上の「New pull requests」ボタンをクリックします。

②Comparing changes というページになります。

Comparing changes というのは、直訳すると「変更の比較」という意味です。
親リポジトリ(エルマスさんのリポジトリ)とクローンされたリポジトリ(あなたのリポジトリ)の差分をチェックしてからプルリクを出せますよというGitHubさんの親切設計です。

英語なので難しそうに見えますが、書いてあることはかんたんです。
(↓クリックで画像を拡大できます)

↑左の部分はプルリクを出す先を選べるようになっています。
ここは勝手にクローン元のリポジトリが表示されているのでそのままでOKです。

↑右の部分は、プルリクを出す元を選びます。
もちろんあなたのリポジトリからプルリクを出すので ユーザ名/pull-request-practice というところはそのままでOKです。

変更が必要なのはブランチの部分です。何もしないと master になっているはずです。プルダウンをクリックして、プルリクに出したいブランチ(今回の場合は add-mytext)を選びましょう。

③Open a pull request のページになります。

プルリクのタイトルとメッセージをかいて、最後に「Create pull request」ボタンをクリックします。

赤字で小さく「Can’t automatically merge. Don’t worry, you can still create the pull request.」と書いてありますね。
「自動マージはされませんよ。でも心配しないでください、あなたはプルリク作成を続行できます」という意味です。
プルリクを出すだけなら出せるということですのでそのまま作成して大丈夫です。

④プルリクが作られました!

これで、エルマスさんのリポジトリにプルリクが出せました!
私がサンプルで出したプルリクのページはこちらです。

送っていただくプルリクについて、もともとは手作業でマージしていました(ときどき不適切なコミット内容があったため、目視でチェックしてマージしていました)。しかし、ありがたいことに練習で送っていただくプルリクエストの数が多くなってきまして、手作業でのマージが追いつかないので、現在はマージしておりません。

「プルリクを送ったのになぜエルマスさんのmasterブランチに反映されないのか?」というご質問に対してお答えするならば、マージをしていないためです。
プルリクエストの仕組み上、リポジトリの持ち主がマージを許可しない限り、勝手に更新されることはない仕様になっています。
本当はすべてマージできるとよいのですが、現在マージ待ちのプルリクエストが1600件もあるため、ご迷惑をおかけしますが、何卒ご理解のほどお願いいたします。


補足:SSHでの接続についてはGitHub公式のヘルプページが詳しいです。SSHでの接続方法については、次回増刷が決まりましたら追加したいと思っています。


わかばちゃんと学ぶシリーズ


サポートいただけると制作速度が上がります!!