Pull requestは
どのGitHubレポジトリに
変更を加える上でも重要です
どのようにして効果的に使えるかを
見ていきましょう
♪ (音楽) ♪
Pull requestは別のコードベースで
変更を行うための手段です
あなたが中心的な貢献者である場合でも
離れてforkで作業している場合でも
使うことができます
中心的な貢献者ではない場合
このプロジェクトにforkを使って参加し
自分で変更を加えて
オリジナルの作者に
その変更を提案として
pull requestを送ることができます
つまり不満を言うよりも
修正を加える方が簡単になるため
GitHubはオープンソースの
成長と発展を促進してきたのです
編集を行い 改善することで
皆の利益になります
これはクローズドプロジェクトや
社内プロジェクト 個人用レポジトリでも同じです
レポジトリにpushする権限があっても
ブランチで作業をして
コードをレビューしてもらうように
pull requestを送ります
つまりブランチを作成して
コミットをし始め
レビューしてもらう準備ができたら
そのpull requestにチーム内の人に
送り返せばいいのです
pull requestは会話であり
ブランチの現状を
一方的に教えるものではありません
むしろ会話や議論に似ていて
コードに加えられた修正は
時系列順に表示され
最終的に承認されるか
悪いケースだと―
下向きの親指マークとともに「この変更は
あまり良くない」と書かれるでしょう
いずれの場合においても
URLとpull requestは維持されます
物事が拒否されたり
受け入れられなかったからと言って
議論をやめる必要はありません
承認されなかった理由や
今後どのような変更ができるかを
見つけ出して
以降のpull requestが
受け入れられるようにしましょう
これは後からチームに入った人のための
教育ツールとしても機能します
これらのpull requestは
どんな変更なら
ここで受け入れられるか
人が考えている例外や
条件やフォーマットは何かについての
会話なのであり
URLを保存しておいて
新しいメンバーの
教育ツールとして参照できます
つまり機能がどのように
生まれたかについての
メールを転送する必要がないのです
URLを教えるだけで
いつでも参照できます
私たちはまた人材だけでなく
技術的インプットにも関心があります
継続的インテグレーション
つまりCIシステムのうち
TravisやHudsonやJenkins
CirclecCIやTeam Cityなどは
どれもGitHub pull requestと
インテグレーションでき
ブランチのビルドステータス―
つまりpull rerquestの
基本ユニットを
会話に即して報告できます
つまり会話とコードの変更に即して
ビルドステータスがポップアップして
こう言うのです
「すべて合格でした」とか
「テストに通らなかったものもある」など
Mergeボタンのステータスも左右します
「Merge Pull Requestの
ボタンを押す前に―
全てのテストに通って
ブランチをクリーンにしてみてはどうですか?」
というような警告が提供されます
さてフィードバックをもらうための
CIステータスもインテグレートしているので
総合的な人の手によるレビューに加えて
技術的なテストも
ブランチのコンテンツに対してのみならず
ブランチとその送り先の
予測マージに対しても行います
だからマージが行われた際に
どのようになるかわかります
そのマージが変更不可である
というわけではありません
予測マージを実際に行い
どうなるかを確認して
このマージを行った場合に
うまくいくかどうかを
知らせてくれます
もしCIから良いレポートが出て
他の人から
スレッドにいくつかthumb upや
shipをもらったら
Merge Pull Requestのボタンを
押す時です
これが済んだら ブランチを削除する
オプションが提示されます
少し怖いかもしれませんが
悪いものではありません
そのブランチを閉じたり削除することを
恐れる必要はありません
なぜなら全てのコミットは
送り先のブランチにあるからです
保存されているので
このブランチを削除して
今後の展開は送り先で行われると
人に知らせましょう
pull requestはまだ残っていますが
これは議論を記録したいときのためと
あなたのIDと作業を行った功績を
マージされたコミットと一緒に
送り先のブランチに表示させるためです
GitとGitHub Foundationsの本エピソードを
ご覧いただきありがとうございます
よく知られている
pull requestについてご紹介しました
横のSubscribeをクリックして
チャンネルを購読するのを忘れずに
質問やコメントがある場合は
下へどうぞ
GitやGitHubのトピックに関する
他のチュートリアル・ビデオも
見てみてくださいね
♪ (終わりの音楽) ♪