Versão do artigo: GitHub.com
Requiring a linear commit history
You can require a linear commit history to block all merge commits from a protected branch.
Protected branches are available in public repositories with GitHub Free, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see "GitHub's products."
Anyone with admin permissions to a repository can require a linear commit history.
Enforcing a linear commit history prevents merge commits from being pushed to the protected branch. This means that any pull requests merged into the protected branch must use a squash merge or a rebase merge. A strictly linear commit history can help teams backtrack changes more efficiently. For more information about merge methods, see "About pull request merges."
You can automatically enforce protected branch settings for some or all branches in your repository. Para obter mais informações, consulte "Configurar branches protegidos".
Before you can require a linear commit history, your repository must allow squash merging or rebase merging. For more information, see "Configuring pull request merges."
- No GitHub, navegue até a página principal do repositório.
- Under your repository name, click Settings.
- 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.
- Under "Protect matching branches", select Require linear history.
- Outra opção é selecionar Include administrators (Incluir administradores). This enforces all configured restrictions for repository administrators.
- Click Create.