Branch protection rulesで最低x人のレビューを必須にする – 【GitHub】

Branch protection rulesで最低x人のレビューを必須にする – 【GitHub】

Branch protection rulesを指定したブランチに設定することにより最低x人のレビューを必須にする設定をする事が出来ます。

Branch protection rules

「Settings」をクリックし、サイドバーの「Branches」をクリックし、「Add branch ruleset」をクリックします。

Enforcement statusを「Active」に設定、「Add target」-「Include by pattern」を選択します。

ブランチ名(ここではproduction)を入力し、「Add Inclusion pattern」をクリックします。

Require a pull request before merging

「Require a pull request before merging」にチェックを入れ、「Required approvals」を「1」に設定します。

これで設定したブランチへの直接pushが出来なくなり、PR作成時に第三者の最低1人からのレビュー承認が必須になります。
※Bypass listを指定すればruleを無視して直接pushする事が可能になります。

直接push時のエラー例

remote: error: GH013: Repository rule violations found for refs/heads/prod.
remote: – Changes must be made through a pull request.

  • PRからのマージが唯一の更新手段となる
  • 実質PRでReviewersの設定が必須(権限のあるユーザのみ表示されて指定することが可能)

ReviewersがApprove(承認)するとPRをマージする事が出来るようになります。このボタンを押すのはどちらでもOKですが、実務ではPR作成者が多い気がします。

Bypass list(個人所有リポジトリでの動作確認)

Bypass listを指定すると、ブランチ保護ルールを無視できる例外設定が出来ます。

Bypass listにWriteを追加します。

これでWrite権限ユーザは直接pushが出来るようになりますが、PRレビューはバイパスされず必須となるようです。

公式ドキュメント

About protected branches - GitHub Docs
You can protect important branches by setting branch protection rules, which define whether collaborators can delete or ...

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました