チーム開発でデプロイ時にどんなPullRequestが入ったかを知る方法


はじめに

Rettyではいわゆる Github Flow 的な運用をしていて、本番リリースするにあたって staging 環境でテストをしてから本番環境にリリースすることをしています。
その中で複数人で開発しているため、Pull Request のマージが多くてどんな Pull Request が今回のリリースに入ったのか気になることがありました。

今回はそれをサクッと把握するためのTIPSとなります。

チーム開発でデプロイ時にどんなPullRequestが入ったかを知る方法

git 開発者は既に私のニーズを把握していたのか?!

【2/28 15:07追記】
git log コマンドの --merges オプションを使えばさらに簡単に把握することができることが判明しましたw

$ git log --merges 1234567..abcdefg
commit > 3456789abcdefghijklmnopqrstu
Merge: 3456789 defghij
Author: hogehoge <[email protected]>
Date:   Fri Feb 28 10:54:14 2014 +0900

    Merge pull request #AAAA from [OrganizationName]/[branchName1]

    commit message

grep と複合して使えば一覧にもできます

$ git log --merges 1234567..abcdefg | grep "Merge pull"
    Merge pull request #AAAA from [OrganizationName]/[branchName1]
    Merge pull request #BBBB from [OrganizationName]/[branchName2]
    Merge pull request #CCCC from [OrganizationName]/[branchName3]
....
    Merge pull request #ZZZZ from [OrganizationName]/[branchNameN]

【2/28 15:07以前の内容】
git log コマンドの --left-right オプションもせっかくなので残しておきますね

$ git log --left-right 1234567..abcdefg
commit > 3456789abcdefghijklmnopqrstu
Merge: 3456789 defghij
Author: hogehoge <[email protected]>
Date:   Fri Feb 28 10:54:14 2014 +0900

    Merge pull request #AAAA from [OrganizationName]/[branchName1]

    commit message

grep と複合して使えば一覧だけ簡単に抽出することができます

$ git log --left-right 1234567..abcdefg | grep "Merge pull"
    Merge pull request #AAAA from [OrganizationName]/[branchName1]
    Merge pull request #BBBB from [OrganizationName]/[branchName2]
    Merge pull request #CCCC from [OrganizationName]/[branchName3]
....
    Merge pull request #ZZZZ from [OrganizationName]/[branchNameN]

awk とか使えばもっと複雑な出力はできそうですが、私はこの grep の結果だけでもけっこう有用でした。

おわりに

Github というか git はやっぱいいですね
Subversion も export とか結構好きだったんですけど、同様のことは git でもできるので今は git にくびったけですw
参考になったらストック and はてぶしていただけるとやる気を出して記事の更新頻度が上がると思いますw