Skip to main content

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2023-01-18. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせく� さい

ブランチ保護ルールを管理する

ブランチ保護ルールを作成して、1 つ以上のブランチに特定のワークフローを強制することができます。たとえば、承認レビューを要求したり、保護されたブランチにマージされるすべての pull request について状態チェックを渡したりすることができます。

Who can use this feature

People with admin permissions to a repository can manage branch protection rules.

保護されたブランチは、GitHub Free及びOrganizationのGitHub Freeのパブリックリポジトリ、GitHub Pro、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Serverのパブリック及びプライベートリポジトリで利用できます。

ブランチ保護ルールについて

リポジトリ内のブランチ保護ルールは、特定のブランチ、すべてのブランチ、または fnmatch 構文で指定する名前のパターンに一致するあらゆるブランチに対して作成できます。 たとえば、release という単語を含む任意のブランチを保護するには、*release* のブランチ ルールを作成します。

ワイルドカード構文 * を使用して、リポジトリ内の現在および将来のブランチすべてに対する規則を作成できます。 GitHub は File::FNM_PATHNAME フラグを File.fnmatch 構文で使用するため、ワイルドカードがディレクトリ区切り記号 (/) と一致しません。 たとえば、qa/* は、qa/ で始まり、1 つのスラッシュを含むすべてのブランチと一致します。 複数のスラッシュを含めるには qa/**/* を使用します。また、qa**/**/* を使用して qa 文字列を拡張すると、規則をさらに包括的にすることができます。 ブランチ規則の構文オプションの詳細については、fnmatch のドキュメントを参照してく� さい。

リポジトリが同じブランチに影響する複数の保護されたブランチのルールを持っているなら、特定のブランチ名を含むルールがもっとも高い優先� �位を持ちます。 同じ特定のブランチ名を参照する保護されたブランチのルールが複数あるなら、最初に作成されたブランチルールが高い優先� �位を持ちます。

*?] などの特殊文字を含む、保護されたブランチのルールは、作成された� �序で適用されるので、これらの文字が含まれる規則は古い方が高い優先� �位を持ちます。

既存のブランチのルールに例外を作成するため、特定のブランチ名に対するルールなど、優先度の高いブランチ保護ルールを新しく作成できます。

使用可能なブランチ保護設定それぞれの詳細については、「保護されたブランチについて」を参照してく� さい。

ブランチ保護ルールを作成する

ブランチのルールを作成する際に、指定したブランチがリポジトリにしている必要はありません。

  1. で、リポジトリのメイン ページへ移動します。 1. リポジトリ名の下の [ 設定] をクリックします。 リポジトリの設定ボタン

  2. 左側のメニューで [ブランチ] をクリックします。 リポジト リオプションのサブメニュー 4. [Branch protection rules](ブランチ保護ルール) の横にある [Add rule] (ルールの追� ) をクリックします。 ブランチ保護ルールの [Add](追� ) ボタン

  3. "Branch name pattern(ブランチ名のパターン)"の下で、保護したいブランチの名前もしくはパターンを入力してく� さい。 ブランチのルール フィールド

  4. 必要に応じて、Pull Requestレビュー必� �を有効化します。

    • [Protect matching branches](一致するブランチを保護する) で、 [Require pull request reviews before merging](マージ前に pull request レビュー必� �) を選択します。 pull request レビュー制限のチェックボックス
    • [Required approving reviews](承認レビュー必� �) ドロップダウン メニューをクリックし、ブランチで必要とする承認レビューの数を選択します。 必要なレビュー承認数を選択するドロップダウン メニュー
    • 必要に応じて、コードを変更するコミットがブランチにプッシュされたときに pull request 承認レビューを却下するには、 [Dismiss stale pull request approvals when new commits are pushed](新しいコミットがプッシュされたときに古い pull request 承認を却下する) を選択します。 新たなコミットがプッシュされたときに古い pull request の承認を却下するチェックボックス
    • 必要に応じて、pull request が影響するコードに所有者が指定されているとき、コード所有者のレビューを必� �にするには、 [Require review from Code Owners](コード所有者のレビュー必� �) を選択します。 詳細については、「コードオーナーについて」を参照してく� さい。 [Require review from code owners](コード所有者のレビュー必� �)
    • 必要に応じて、リポジトリが組織に含まれる� �合に、 [Restrict who can dismiss pull request reviews](pull request レビューを却下できるユーザーを制限) を選択します。 次に、pull request レビューの却下を許可するアクターを探して選択します。 詳細については、「プル リクエスト レビューの却下」を参照してく� さい。 pull request レビューを却下できるユーザーを制限するチェックボックス
  5. 必要に応じて、ステータスチェック必� �を有効化します。 詳細については、「ステータスチェックについて」を参照してく� さい。

    • [Require status checks to pass before merging](マージ前に状態チェック合� �必� �) を選択します。 必� �状態チェックのオプション
    • 必要に応じて、保護されたブランチの最新コードに対して pull request を確実にテストするには、 [Require branches to be up to date before merging](マージ前にブランチの最新状態必� �) を選択します。 寛容または厳� �な必� �状態のチェックボックス
    • 状態チェックを探して、必� �にするチェックを選択します。 使用可能な状態チェックと必� �チェックの一覧を検索するインターフェイス
  6. 必要に応じて、 [Require conversation resolution before merging](マージ前に会話の解決必� �) を選択します。 [マージ前に会話の解決必� �] オプション

  7. 必要に応じて、 [Require signed commits](署名済みコミット必� �) を選択します。 [Require signed commits](署名済みコミット必� �) オプション

  8. 必要に応じて、 [Require linear history](直線状の履歴必� �) を選択します。 [Require linear history](直線状の履歴必� �) オプション

  9. 必要に応じて、 [上のルールを管理者に適用する] を選択します。 [上のルールを管理者に適用する] チェックボックス

  10. 必要に応じて、ブランチの制限を有効にします。

    • [Restrict who can push to matching branches](一致するブランチにプッシュできるユーザーを制限) を選択します。 ブランチ制限のチェックボックス
    • 保護されたブランチにプッシュできるアクセス許可または一致するブランチを作成するアクセス許可を設定する、ユーザ、チー� 、またはアプリを探して、選択します。 ブランチ制限の検索
  11. 必要に応じて、[Rules applied to everyone including administrators](管理者を含む全員に適用されるルール) の下で [Allow force pushes](フォース プッシュを許可) を選択します。 [Allow force pushes](フォース プッシュを許可) オプション

    詳細については、「フォース プッシュを許可」を参照してく� さい。

  12. 必要に応じて、 [Allow deletions](削除を許可) を選択します。 ブランチの削除を許可するオプション

  13. Create をクリックしてく� さい。

ブランチ保護ルールを編集する

  1. で、リポジトリのメイン ページへ移動します。 1. リポジトリ名の下の [ 設定] をクリックします。 リポジトリの設定ボタン
  2. 左側のメニューで [ブランチ] をクリックします。 リポジト リオプションのサブメニュー
  3. 編集しようとするブランチ保護規則の右側の [編集] をクリックします。 [編集] ボタン
  4. ブランチ保護ルールを自由に変更してく� さい。
  5. [変更を保存] をクリックします。 [変更を保存] ボタン

ブランチ保護ルールを削除する

  1. で、リポジトリのメイン ページへ移動します。 1. リポジトリ名の下の [ 設定] をクリックします。 リポジトリの設定ボタン
  2. 左側のメニューで [ブランチ] をクリックします。 リポジト リオプションのサブメニュー
  3. 削除しようとするブランチ保護規則の右側の [削除] をクリックします。 [削除] ボタン