Skip to content

create pull request

Yuka Kato edited this page Nov 23, 2015 · 5 revisions

🙇 こちらのマニュアルをよりよくするためのアンケートにご協力いただけませんか? 🙇

なにができるの?

このページでは、Pull request を新しく作成する方法について説明しています。

Pull request(プルリクエスト)ってなに?

Pull request(以下、PR と書きます) は主に複数人で開発をしている環境のためにある機能で、「このブランチの内容を、 master(本流)に取り込んで(==マージして)くれませんか?」という提案をするときに使用します。

具体的には、以下のようなケースが存在します:

  • オープンソース(==コードが公開されている)のプロジェクトに対して「キミらのコードを元にして、さらにこんなイカした機能を追加してみたんだけど、よかったら取り込んでくれないか」と提案するとき
  • 仕事で使っているソースコードに対して「新しい機能のコードを書いたので、レビューしてくれませんか?問題なければ、今動いているコードに取り込んでください」と チームメンバーにお願いするとき

よちよち.rb では、リポジトリに変更を加える際には原則としてすべてのケースで PR を作って送ってもらうスタイルをとっています。

そして、他のメンバーさんにレビューしてもらい、2名以上から "LGTM(Looks Good To Me)" コメントをもらえたら、 PR 作成者ご自身でマージしていただきます。

参考:ブランチをマージするには

やってみよう

1. 'Compare & pull request' ボタンを押す

新しく作ったブランチを push したばかりの状態でブラウザから Github のリモートリポジトリのトップ画面へ行くと、"Your recently pushed branches" という表示が出ています(赤い四角で囲った部分)。

branch

この右端にある "Compare & pull request" ボタンを押すことで、PR を作成する画面が開かれます。(これを押しただけではまだ PR は送信されませんのでご安心ください。)

※ この "Your recently pushed branches" という表示は ある程度時間が経つと消えてしまうようです。

その場合は、ブランチ一覧のプルダウンから PR を送るのに使いたいブランチ(すなわち、今まで変更を加えてきたブランチ)を選び、選択したブランチが表示されている状態にして、

pullldown

New pull request ボタン(矢印の部分)を押します。

change_branch

すると、そのブランチをもとにして Pull Request を新規作成する画面が表示されます。

2. PR を作成する

PR を作成します。PR には、タイトルコメントをつけることができます。

pr1

タイトル

デフォルトでは、タイトル欄にはブランチ名がそのまま入力されています。

そのままでも構いませんが、PR 一覧に表示されたときに「どんな内容を含んだ PR か」がわかるようなタイトルにするとよいでしょう。

コメント

その PR に関して付け加えておきたい説明や、どうしてこの PR を送ったのかなどを入力します。ここはオプションなので、記入しなくてもエラーにはなりません。

タイトルもコメントも、「見ず知らずの人に、この PR でやりたいことを1から説明する」ような状況を意識してつけるといいと思います。

pr2

すべて準備完了になったら、いよいよ送信です。右下の "Create pull request" ボタンを押しましょう。

完了すると、今作った PR のトップ画面が開いた状態になります。

pr3

3. マージできる状態になるまで修正する

最初にも書いたとおり、PR は「このブランチの内容を、 master(本流)に取り込んで(==マージして)くれませんか?」という提案の役割を果たします。

本流に取り込むということは 元のコード、すなわち製品に多少なりとも影響のあることですから、他のメンバーから「ここは直したほうがいいかも」というアドバイスがあるかもしれません。また、自分で「ここもう少し直したいな」という部分が出てくることもあるかと思います。

そういった場合は、適宜編集をしてから 今までやってきたようにgit add で Git にステージングし、git commitを繰り返して、git push でアップロードしてくれば、この画面にもそのコミットの内容が反映されていきます。

あなたが「もうこれで思い残すことはない!」と思える状態にまでコードをブラッシュアップし終わり、且つ、他のメンバーさん 2名以上から LGTM をもらえるまで、このサイクルを繰り返していきます。

参考:ブランチをマージするには

さあ、マージまであと少しです。

🙇 こちらのマニュアルをよりよくするためのアンケートにご協力いただけませんか? 🙇

次の手順のページへ→

←前の手順のページへ