You can create a branch rule in a repository for a specific branch, all branches, or any branch that matches a naming pattern specified with the fnmatch syntax. For example, to require any branch containing the word
release to have at least two pull request reviews before merging, you can create a branch rule for
You can also set up automatic branch protection for all branches in your repository with the wildcard syntax
*. Because GitHub uses the
File::FNM_PATHNAME flag for the
File.fnmatch syntax, the wildcard does not match directory separators (
/). For example,
qa/* will match all branches beginning with
qa/ and containing a single slash. You can include multiple slashes with
qa/**/*, and you can extend the
qa string with
qa**/**/* to make it more inclusive. For more information about syntax options for branch rules, see the fnmatch documentation.
To create an exception to an existing branch rule, you can create a new branch protection rule that is higher priority, such as a branch rule for a specific branch name. For more information about the priority order and other settings for protected branch rules, see "About protected branches."
Note: To create a branch rule, the branch you specify doesn't have to exist yet in the repository.
- On GitHub Enterprise, navigate to the main page of the repository.
- Under your repository name, click
- In the left menu, click Branches.
- Next to "Branch protection rules", click Add rule.
- Under "Branch name pattern", type the branch name or pattern you want to protect.
- Optionally, you can configure specific branch rule settings.
- To confirm your branch protection rule, click Create or Save changes.