WEBVTT
00:00:00.067 --> 00:00:01.784
Pull requestは
どのGitHubレポジトリに
00:00:01.784 --> 00:00:04.152
変更を加える上でも重要です
00:00:04.402 --> 00:00:06.207
どのようにして効果的に使えるかを
見ていきましょう
00:00:06.975 --> 00:00:08.689
♪ (音楽) ♪
00:00:11.512 --> 00:00:12.829
Pull requestは別のコードベースで
00:00:12.829 --> 00:00:15.550
変更を行うための手段です
00:00:15.742 --> 00:00:17.814
あなたが中心的な貢献者である場合でも
00:00:17.814 --> 00:00:19.764
離れて貢献している場合でも
使うことができます
00:00:20.014 --> 00:00:22.431
中心的な貢献者ではない場合
このプロジェクトにforkを使って参加し
00:00:22.431 --> 00:00:24.212
自分で変更を加えて
00:00:24.212 --> 00:00:26.088
オリジナルの作者に
その変更を提案として
00:00:26.088 --> 00:00:27.967
pull requestを送ることができます
00:00:28.328 --> 00:00:32.843
つまり不満を言うよりも
修正を加える方が簡単になるため
00:00:32.843 --> 00:00:37.022
GitHubはオープンソースの
成長と発展を促進してきたのです
00:00:37.428 --> 00:00:39.732
編集を行い 改善することで
00:00:39.732 --> 00:00:41.280
皆の利益になります
00:00:41.280 --> 00:00:46.515
これはクローズドプロジェクトや
社内プロジェクト 個人用レポジトリでも同じです
00:00:49.587 --> 00:00:51.725
レポジトリにプッシュする権限があっても
00:00:51.725 --> 00:00:54.270
ブランチで作業をして
コードをレビューしてもらうように
00:00:54.270 --> 00:00:55.962
pull requestを送ります
00:00:55.962 --> 00:00:57.709
つまりブランチを作成して
00:00:57.709 --> 00:01:00.595
コミットをし始め
レビューしてもらう準備ができたら
00:01:00.595 --> 00:01:03.861
そのpull requestにチーム内の人に
送り返せばいいのです
00:01:04.424 --> 00:01:06.931
pull requestは会話であり
00:01:06.931 --> 00:01:09.973
ブランチの現状を
一方的に教えるものではありません
00:01:09.973 --> 00:01:12.650
むしろ会話や議論に似ていて
00:01:12.650 --> 00:01:16.565
コードに加えられた修正は
時系列順に表示され
00:01:16.565 --> 00:01:19.860
最終的に承認されるか
悪いケースだと―
00:01:19.860 --> 00:01:24.701
下向きの親指マークとともに
「この変更はあまり良くない」と書かれるでしょう
00:01:24.701 --> 00:01:29.106
いずれの場合においても
URLとpull requestは存続します
00:01:31.761 --> 00:01:33.150
物事が拒否されたり
00:01:33.150 --> 00:01:35.253
受け入れられなかったからと言って
議論をやめる必要はありません
00:01:35.392 --> 00:01:37.514
承認されなかった理由や
今後どのような変更ができるかを
00:01:37.514 --> 00:01:39.234
見つけ出して
以降のpull requestが
00:01:39.234 --> 00:01:41.441
受け入れられるようにしましょう
00:01:41.613 --> 00:01:43.753
これは後からチームに入った人のための
00:01:43.794 --> 00:01:45.912
教育ツールとしても機能します
00:01:46.052 --> 00:01:48.824
これらのpull requestは
どんな変更なら
00:01:48.824 --> 00:01:51.150
ここで受け入れられるか
人が考えている例外や
00:01:51.150 --> 00:01:53.517
要件やフォーマットは何かについての
00:01:53.517 --> 00:01:55.254
会話なのであり
00:01:55.254 --> 00:01:58.553
URLを保存しておいて
新しいメンバーの
00:01:58.553 --> 00:02:00.134
教育ツールとして参照できます
00:02:00.797 --> 00:02:03.427
つまり機能がどのように
生まれたかについての
00:02:03.427 --> 00:02:05.305
メールを転送する必要がないのです
00:02:05.409 --> 00:02:08.350
URLを教えるだけで
いつでも参照できます
00:02:11.517 --> 00:02:13.715
私たちはまた人材だけでなく
00:02:13.715 --> 00:02:14.906
技術的インプットにも関心があります
00:02:14.906 --> 00:02:16.884
継続的インテグレーション
つまりCIシステムのうち
00:02:16.884 --> 00:02:21.179
TravisやHudsonやJenkins
CirclecCIやTeam Cityなどは
00:02:21.179 --> 00:02:23.645
どれもGitHub pull requestと
インテグレーションでき
00:02:23.645 --> 00:02:26.323
ブランチのビルドステータス―
00:02:26.323 --> 00:02:28.563
つまりpull rerquestの
基本ユニットを
00:02:28.563 --> 00:02:30.824
会話に即して報告できます
00:02:31.208 --> 00:02:34.184
つまり会話とコードの変更に即して
00:02:34.184 --> 00:02:36.764
ビルドステータスがポップアップして
こう言うのです
00:02:36.764 --> 00:02:39.997
「すべて合格でした」とか
「テストに通らなかったものもある」など
00:02:40.582 --> 00:02:43.036
Mergeボタンのステータスも左右します
00:02:43.036 --> 00:02:44.754
「Merge Pull Requestの
ボタンを押す前に―
00:02:44.754 --> 00:02:47.015
全てのテストに通って
00:02:47.015 --> 00:02:48.658
ブランチをクリーンにしてみてはどうですか?」
00:02:48.658 --> 00:02:51.859
というような警告が出ることでしょう
00:02:52.049 --> 00:02:56.870
さてフィードバックをもらうための
CIステータスもインテグレートしているので
00:02:56.870 --> 00:03:01.852
総合的な人の手によるレビューに加えて
技術的なテストも
00:03:01.852 --> 00:03:04.136
ブランチのコンテンツに対してのみならず
00:03:04.136 --> 00:03:09.215
ブランチとその送り先の
予測マージもに対しても行うので
00:03:09.556 --> 00:03:11.331
マージが行われた際に
00:03:11.331 --> 00:03:13.034
どのようになるかわかります
00:03:13.034 --> 00:03:14.930
そのマージが変更不可である
というわけではありません
00:03:14.930 --> 00:03:17.511
予測マージを実際に行い
どうなるかを確認して
00:03:17.511 --> 00:03:19.644
このマージを行った場合に
00:03:19.644 --> 00:03:21.280
うまくいくかどうかを
知らせてくれます
00:03:23.836 --> 00:03:27.879
もしCIから良いレポートが出て
他の人から
00:03:27.879 --> 00:03:30.462
スレッドにいくつかthumb upや
shipをもらったら
00:03:30.462 --> 00:03:32.729
Merge Pull Requestのボタンを
押す時です
00:03:33.104 --> 00:03:36.560
これが済んだら ブランチを削除する
オプションが提示されます
00:03:36.560 --> 00:03:39.473
少し怖いかもしれませんが
悪いものではありません
00:03:39.515 --> 00:03:42.481
そのブランチを閉じたり削除することを
恐れる必要はありません
00:03:42.481 --> 00:03:44.804
なぜなら全てのコミットは
送り先のブランチにあるからです
00:03:44.804 --> 00:03:45.926
保存されているので
00:03:45.926 --> 00:03:47.857
このブランチを削除して
00:03:47.857 --> 00:03:49.778
今後の展開は送り先で行われると
人に知らせましょう
00:03:50.096 --> 00:03:52.025
pull requestはまだ残っていますが
00:03:52.025 --> 00:03:53.945
これは議論を記録したいときのためと
00:03:53.945 --> 00:03:57.038
あなたのIDと作業を行った功績を
00:03:57.038 --> 00:04:00.814
マージされたコミットと一緒に
送り先のブランチに表示させるためです
00:04:02.532 --> 00:04:05.210
GitとGitHub Foundationsの本エピソードを
ご覧いただきありがとうございます
00:04:05.210 --> 00:04:07.695
よく知られている
pull requestについてご紹介しました
00:04:07.695 --> 00:04:10.582
横のSubscribeをクリックして
チャンネルを購読するのを忘れずに
00:04:11.173 --> 00:04:14.657
質問やコメントがある場合は
下へどうぞ
00:04:14.950 --> 00:04:17.376
GitやGitHubのトピックに関する
他のチュートリアル・ビデオも
00:04:17.376 --> 00:04:19.277
見てみてくださいね
00:04:19.546 --> 00:04:21.840
♪ (終わりの音楽) ♪