pt Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.
GitHub AE is currently under limited release. Please contact our Sales Team to find out more.

Managing a branch protection rule

You can create a branch protection rule to enforce certain workflows for one or more branches, such as requiring an approving review or passing status checks for all pull requests merged into the protected branch.

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

Os branches protegidos estão disponíveis em repositórios públicos com GitHub Free e GitHub Free para organizações, e em repositórios públicos e privados com GitHub Pro, GitHub Team, GitHub Enterprise Cloud GitHub AE, e GitHub Enterprise Server.

Neste artigo

About branch protection rules

Você pode criar uma regra de branch em um repositório para um branch específico, todos os branches, ou qualquer branch que corresponda a um padrão de nomenclatura especificado com a sintaxe fnmatch. Por exemplo, para exigir que qualquer branch que contenha a palavra versão tenha pelo menos duas revisões de pull request antes do merge, você pode criar uma regra de branch para *versão*.

You can create a rule for all current and future branches in your repository with the wildcard syntax *. Pelo fato de o GitHub usar o sinalizador File::FNM_PATHNAME para a sintaxe File.fnmatch, o curinga não corresponde aos separadores de diretório (/). Por exemplo, qa/* pode fazer correspondência com todos os branches que começam com qa/ e contêm uma única barra. You can include multiple slashes with qa/**/*, and you can extend the qa string with qa**/**/* to make the rule more inclusive. Para obter mais informações sobre opções de sintaxe para regras de branch, consulte a documentação de fnmatch.

Se um repositório tiver várias regras de branch protegido que afetem os mesmos branches, as regras que incluírem um nome de branch específico terão a prioridade mais alta. Se houver mais de uma regra de branch protegido que faça referência ao mesmo nome de branch específico, a regra de branch criada primeiro terá a prioridade mais alta.

As regras de branch protegido que mencionam um caractere especial, como *, ? ou ], são aplicadas na ordem em que foram criadas, de modo que as regras mais antigas com esses caracteres têm uma prioridade mais alta.

Para criar uma exceção a uma regra de branch existente, você pode criar outra regra de proteção de branch que tenha prioridade superior, como uma regra para um nome de branch específico.

For more information about each of each of the available branch protection settings, see "About protected branches."

Creating a branch protection rule

When you create a branch rule, the branch you specify doesn't have to exist yet in the repository.

  1. No GitHub AE, navegue até a página principal do repositório.

  2. No nome do seu repositório, clique em Configurações.

    Botão de configurações do repositório

  3. No menu à esquerda, clique em Branches.

    Submenu de opções do repositório

  4. Ao lado de "Regras de proteção do branch", clique Adicionar regra.

    Botão de adicionar regra de proteção do branch

  5. Em "Padrão do nome do branch", digite o nome de branch ou padrão que você deseja proteger.

    Campo regra do branch

  6. Optionally, enable required pull request reviews.

    • Under "Protect matching branches", select Require pull request reviews before merging.

      Caixa de seleção Pull request review restriction (Restrição de revisão de pull request)

    • Click the Required approving reviews drop-down menu, then select the number of approving reviews you'd like to require on the branch.

      Menu suspenso para selecionar o número de revisões de aprovação obrigatórias

    • Optionally, to dismiss a pull request approval review when a code-modifying commit is pushed to the branch, select Dismiss stale pull request approvals when new commits are pushed.

      Caixa de seleção Dismiss stale pull request approvals when new commits are pushed (Ignorar aprovações de pull requests obsoletas ao fazer push de novos commits)

    • Optionally, to require review from a code owner when the pull request affects code that has a designated owner, select Require review from Code Owners. Para obter mais informações, consulte "Sobre proprietários do código".

      Require review from code owners (Exigir revisão de proprietários de código)

    • Optionally, if the repository is part of an organization, select Restrict who can dismiss pull request reviews. Then, search for and select the people or teams who are allowed to dismiss pull request reviews. Para obter mais informações, consulte " Ignorar uma revisão de pull request".

      Caixa de seleção Restrict who can dismiss pull request reviews (Restringir quem pode ignorar revisões de pull request)

     1. Optionally, enable required status checks. 
      - Selecione **Require status checks to pass before merging** (Exigir verificações de status para aprovação antes de fazer merge). ![Opção Required status checks (Verificações de status obrigatórias)](/assets/images/help/repository/required-status-checks.png)
    
  7. Optionally, to ensure that pull requests are tested with the latest code on the protected branch, select Require branches to be up to date before merging.

    Caixa de seleção Status obrigatório rígido ou flexível

  8. Na lista de verificações de status disponíveis, selecione as verificações que você deseja tornar obrigatórias.

    Lista de verificações de status disponíveis

  9. Optionally, select Require signed commits.

    Opção Require signed commits (Exigir commits assinados)

  10. Optionally, select Require linear history.

    Opção de histórico linear necessária

  11. Outra opção é selecionar Include administrators (Incluir administradores).

    Caixa de seleção Include administrators (Incluir administradores)

  12. Optionally, enable branch restrictions.

    • Select Restrict who can push to matching branches.

      Caixa de seleção Branch restriction (Restrição de branch)

    • Procurar e selecionar pessoas, equipes ou aplicativos que tenham permissão para fazer push para o branch protegido.

      Pesquisa de restrição de branch

  13. Optionally, under "Rules applied to everyone including administrators", select Allow force pushes.

    Permitir opção push forçado

  14. Optionally, select Allow deletions.

    Permitir a opção de exclusão de branch

  15. Clique em Criar.

Editing a branch protection rule

  1. No GitHub AE, navegue até a página principal do repositório.
  1. No nome do seu repositório, clique em Configurações.
    Botão de configurações do repositório
  1. No menu à esquerda, clique em Branches.

    Submenu de opções do repositório

  2. To the right of the branch protection rule you want to edit, click Edit.

    Botão editar

  3. Make your desired changes to the branch protection rule.

  4. Clique em Save changes (Salvar alterações).

    Botão Edit message (Editar mensagem)

Deleting a branch protection rule

  1. No GitHub AE, navegue até a página principal do repositório.
  1. No nome do seu repositório, clique em Configurações.
    Botão de configurações do repositório
  1. No menu à esquerda, clique em Branches.

    Submenu de opções do repositório

  2. To the right of the branch protection rule you want to delete, click Delete.

    Botão excluir

Esse documento ajudou você?

Privacy policy

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.