Create a new world

きっと誰もが新しい世界を作り続けているんだよ。

はじめてもらったpull requestをmergeするまでの話。

以前、Rubyの練習でちょっと書いた「やる夫に学ぶTDD メイヤーズの三角形編」(dproject21/yaruo_tdd_triangle · GitHub)が2012/07/06 リーダブルコード − 忘れてもいいコードを書こう。#devlove - Togetterまとめで取り上げられました。(ディスカッションのチュートリアル材料として。)

その翌々日。ふとメールをチェックするとgithubから「pull requestされてるよ!」というメールが来てました。
初めてもらったpull request。どうやって対応すればいいのかも分からず、いろいろ調べて対応した流れを書き残しておきます。

pull requestされたソースを自分のリポジトリ

まずはpull requestされたソースを扱うブランチを作りましょう

git checkout -b {pull requestされたソースを扱うブランチの名前} master
git pull git://github.com/{forkされた相手のリポジトリ}

これで相手のコミットが自分のブランチに入ってきます。
相手のコミットの内容をチェックして、問題がなければマージしていきます。
その前にコミットをしておきましょう。

git commit

自分のブランチからgithub

以下、自分のmasterにmergeしてpushします。

git checkout master
git merge {pull requestされたソースを扱うブランチの名前}
git add
git commit
git push origin master

pull requestへの返事をする。

pull requestされたソースをmergeしpushすると、pull requestがcloseされます。
これでpull requestの対応が終わりました。
pull requestの画面から感謝のコメントを書いておきましょう。

ちなみにpull requestを終えたあとはこんな感じになってます。
めっちゃpoor english...
Hi! dproject21 by changeworld · Pull Request #1 · dproject21/yaruo_tdd_triangle · GitHub

対応の方法はA-Liaison BLOG: github で pull request をされたとき・するときの手順を参考にしました。