pull requests について
メモ: pull request を使う際には以下のことを念� �に置いてく� さい:
- 共有リポジトリ モデルで作業している� �合は、pull request にトピック ブランチを使用することをお勧めします。 ブランチあるいはコミットからプルリクエストを送ることもできますが、トピックブランチを使えば提案した変更を更新する必要がある� �合、フォローアップのコミットをプッシュできます。
- コミットを強制的に pull request にプッシュする� �合は十分に注意してく� さい。 プッシュを強制すると、リポジトリの履歴が変更され、pull request が� �損する可能性があります。 他のコラボレーターが強制プッシュの前にプロジェクトを分岐すると、そのコラボレーターが作業のベースにしたコミットが上書きされる可能性があります。
pull request は、GitHub.com、GitHub Desktop、GitHub Codespaces、GitHub Mobile で、GitHub CLI の使用時に作成できます。
プルリクエストを初期化すると、あなたのブランチ(比較ブランチ)とリポジトリのベースブランチとの差異の高レベルの概要を示すレビューページが表示されます。 提案した変更の概要を追� したり、コミットによる変更をレビューしたり、ラベルやマイルストーン、アサインされた人を追� したり、個人のコントリビューターや Team に @mention したりできます。 詳細については、プル リクエストの作成に関するページを参照してく� さい。
プルリクエストを作成したら、トピックブランチからコミットをプッシュして、それらを既存のプルリクエストに追� できます。 それらのコミットは、プルリクエスト内で時系列� �に表示され、変更は"Files changed(変更されたファイル)"タブで見ることができます。
他のコントリビューターは、あなたが提案した変更をレビューしたり、レビューコメントを追� したり、プルリクエストのディスカッションにコントリビュートしたり、さらにはプルリクエストにコメントを追� したりできます。
提案された変更に満足したなら、プルリクエストをマージできます。 共有リポジトリモデルで作業している� �合は、プルリクエストを作成し、あなたか他のユーザが、プルリクエストで指定したベースブランチにフィーチャブランチからの変更をマージします。 詳細については、pull request のマージに関するページを参照してく� さい。
リポジトリでステータスチェックが要求されているなら、必� �のステータスチェックをパスしてからでないと保護されたブランチにあなたのブランチはマージできません。 詳細については、「保護されたブランチについて」を参照してく� さい。
pull request をイシューにリンクして、修正が進行中であることを示し、誰かが pull request をマージしたときイシューを自動的にクローズすることができます。 詳細については、「pull request を Issue にリンクする」を参照してく� さい。
ヒント:
- pull request で古いレビュー コメントを折りたたむか、展開するには、OptionAltAlt を押したまま、 [Show outdated](期限切れを表示) または [Hide outdated](期限切れを非表示) をクリックします。 その他のショートカットについては、キーボード ショートカットを参照してく� さい。
- プルリクエストをマージする際には、変更を効率的に見ることができるようにするためにコミットを squash できます。 詳細については、「pull request のマージについて」を参照してく� さい。
ダッシュボードにアクセスすれば、作業しているかサブスクライブしている最近更新されたプルリクエストへのリンクを� 早く見つけることができます。 詳細については、個人用ダッシュボードに関するページを参照してく� さい。
ドラフト プル リクエスト
ドラフト pull requests は、Organization およびレガシのリポジトリ単位のお支払いプラン向けの GitHub Free のパブリック リポジトリで利用できます。また、GitHub Team、GitHub Enterprise Server 2.17 以降、 および GitHub Enterprise Cloud のパブリック リポジトリとプライベート リポジトリで利用できます。
プルリクエストを作成する際には、レビュー可能なプルリクエストを作成するか、ドラフトのプルリクエストを作成するかを選択できます。 ドラフトのプルリクエストはマージできません。また、コードオーナーにはドラフトのプルリクエストのレビューは自動的にはリクエストされません。 ドラフトの pull request を作成する方法については、「pull request の作成方法」および「フォークからの pull request を作成する」を参照してく� さい。
プルリクエストに対するフィードバックをもらう準備ができているなら、ドラフトのプルリクエストにレビューの準備ができているとマークできます。 プルリクエストにレビューの準備ができているとマークすると、コードオーナーたちからのレビューをリクエストすることになります。 プルリクエストはいつでもドラフトに変換できます。 詳細については、pull request のステージ変更に関するページを参照してく� さい。
比較とプルリクエストページのコミットの違い
比較とプルリクエストページは、次のような異なる方法で、変更されたファイルの diff を計算します。
- 比較ページには、head ref のヒントと、head およびベース ref の現在の共通の先祖 (マージベース) との diff が表示されます。
- プルリクエストページには、プルリクエストが作成されたときの head ref のヒントと、head およびベース ref の共通の先祖との diff が表示されます。 したがって、比較に使用されるマージベースは異なる� �合があります。
参考資料
- GitHub 用語集の "pull request"
- "ブランチについて"
- "pull request へのコメント"
- "pull request のクローズ"