保護されたブランチと必須のステータスチェックの設定
You can enable protected branches for limiting branch manipulation, as well as enforce required status checks before a branch is merged in a pull request or before commits on a local branch can be pushed to the protected remote branch.
Anyone with admin permissions to a repository can enable branch restrictions.
リポジトリで保護されたブランチを有効化する
-
GitHub Enterprise で、リポジトリのメインページへ移動します。
-
リポジトリ名の下で [Settings] をクリックします。
-
左のメニューで [Branches] をクリックします。
-
[Protected Branches(保護されたブランチ)] の下で、保護のマークをしたいブランチをドロップダウンメニューから選択してください。
-
Protect this branch(このブランチを保護)を選択してください。
-
[Save changes] をクリックします。
必須ステータスチェックのタイプ
必須ステータスチェックのタイプ | 設定 | マージの要件 | 留意点 |
---|---|---|---|
Strict | [ Require branches to be up-to-date before merging ] チェックボックスにチェックする | マージ前、ブランチは、base ブランチとの関係で 最新でなければならない 。 | これは、必須ステータスチェックのデフォルト動作です。 他のコラボレーターが、保護された base ブランチにプルリクエストをマージした後に、あなたは head ブランチをアップデートする必要が出てくる可能性があるため、追加のビルドが必要になるかもしれません。 |
Loose | [ Require branches to be up-to-date before merging ] チェックボックスにチェック しない | マージ前、ブランチは base ブランチとの関係で 最新でなくてもよい 。 | 他のコラボレーターがプルリクエストをマージした後に head ブランチをアップデートする必要はないことから、必要となるビルドは少なくなります。 base ブランチと競合する変更がある場合、ブランチをマージした後のステータスチェックは失敗する可能性があります。 |
無効 | [ Require status checks to pass before merging ] チェックボックスにチェック しない | ブランチのマージについての制限はない | 必須ステータスチェックが有効化されていない場合、base ブランチにあわせてアップデートされているかどうかに関わらず、コラボレーターはいつでもブランチをマージできます。 このことで、変更の競合が発生する可能性が高まります。 |
必須ステータスチェックを有効にする
-
GitHub Enterprise で、リポジトリのメインページへ移動します。
-
リポジトリ名の下で [Settings] をクリックします。
-
左のメニューで [Branches] をクリックします。
-
[Protected Branches] の下で、必須のステータスチェックのマークをしたいブランチをドロップダウンメニューから選択します。
-
[Require status checks to pass before merging] を選択します。
-
From the list of available status checks, select the ones you want to make required.
-
[Include administrators(管理者を含める)] を選択することもできます。そうすれば、リポジトリの管理者に必須ステータスチェックを強制できます。
-
オプションとして、[Require branches to be up to date before merging] の選択を解除します。 選択すると、ベースブランチ上でブランチが最新のコードでテストされるようにできます。
-
Restrict who can push to this branch(このブランチにプッシュできる人を制限)を選択することもできます。
-
Search for and select the users or teams who will have permission to push to the protected branch.
-
[Save changes] をクリックします。
参考: 必須ステータスチェックが有効化されているベースブランチにプルリクエストをマージするには、ベースブランチに対するプルリクエストの head ブランチは最新になっていなければなりません。