プルリクエストの必須レビューについて
保護されたブランチは、GitHub Free のパブリックリポジトリ、GitHub Pro のパブリックおよびプライベートリポジトリ、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Server で利用できます。
必須レビューにより、保護されたブランチにコラボレーターが変更を加える前にプルリクエストが指定された数の承認レビューを得ることが保証されます。
リポジトリでブランチの保護を強制した場合、必須レビューをセットアップできます。 ブランチ保護の強制に関する詳しい情報については保護されたブランチの設定を参照してください。必須レビューのセットアップに関する詳しい情報についてはプルリクエストの必須レビューの有効化を参照してください。
リポジトリの管理者は、プルリクエストが保護されたブランチにマージされる前に、書き込みあるいは管理権限をそのリポジトリに持っている人々か、指定されたコードオーナーから指定された数の承認レビューを受けることを要求できます。詳細は「保護されたブランチについて」を参照してください。
必須レビューが有効化されると、リポジトリへの書き込み権限を持っている人なら誰でも、プルリクエスト中の変更を承認できます。ただし、そのリポジトリの書き込みあるいは管理権限を持っている必要な数のレビューアがレビューでプルリクエストの変更を承認しないかぎり、プルリクエストはマージできません。リポジトリの権限レベルに関する詳しい情報については「Organizationのリポジトリ権限レベル」を参照してください。指定されたコードオーナーからのレビューが必要で、プルリクエストが指定されたオーナーを持つコードに影響するなら、そのオーナーからの承認が必須です。
管理者権限を持つ人がレビューで[Request changes] を選択した場合、その人が承認しなければプルリクエストはマージできません。 プルリクエストへの変更をリクエストしたレビューアーが見つからない場合、そのリポジトリに管理あるいは書き込み権限を持つ人が、ブロックしているレビューを却下できます。 詳しい情報についてはプルリクエストレビューの却下を参照してください。
メモ:リポジトリ管理者は、プルリクエストレビューを却下する権限を、特定の人物またはチームに限定できます。 詳しい情報についてはプルリクエストの必須レビューの有効化を参照してください。
承認されたプルリクエストのブランチにコードを変更するコミットをプッシュした場合、リポジトリ管理者によって古いレビューの却下がセットアップされていると、その承認は却下されます。 これは、たとえばベースブランチをプルリクエストのブランチにマージするような、コードを変更しないコミットのプッシュには当てはまりません。
必須レビューがリポジトリ管理者を含むようにセットアップされていないかぎり、管理者権限を持つ人は他の管理者のレビューに関係なくプルリクエストをマージできます。
すべての必須のレビューアがプルリクエストを承認した後でも、他にペンディングあるいは拒否されたレビューを持つオープンなプルリクエストがあり、それらのプルリクエストが同じコミットのheadブランチを指している場合は、そのプルリクエストはマージできません。マージするには、書き込みあるいは管理権限を持つ誰かが他のプルリクエストのブロックしているレビューを承認あるいは却下しなければなりません。
保護されたブランチへのプルリクエストのマージは、書き込みあるいは管理者権限を持つ誰かが承認するまで行えません。 ペンディングになっている、あるいは拒否されたレビューがある場合、エラーメッセージが返されます:
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Changes have been requested.