Skip to main content

Convertendo proteções de ramificação em conjuntos de regras

Use conjuntos de regras para obter visibilidade e controle mais claros sobre as proteções do repositório, preservando seu comportamento existente.

Quem pode usar esse recurso?

People with admin access to a repository, or a custom role with the "edit repository rules" permission, can create, edit, and delete rulesets for a repository.

Os conjuntos de regras 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 Teame GitHub Enterprise Cloud. Consulte Planos do GitHub.

Os conjuntos de regras de push estão disponíveis no plano GitHub Enterprise Cloud em repositórios internos e privados, em forks de repositórios com conjuntos de regras de push habilitados e em organizações na sua empresa.

Sobre a conversão de proteções de ramificação em conjuntos de regras

Os conjuntos de regras oferecem visibilidade e controle mais claros sobre como as proteções se aplicam a um repositório. Ao contrário das regras de proteção de branch, vários conjuntos de regras podem ser aplicados ao mesmo branch ao mesmo tempo e pessoas com acesso de leitura podem exibir os conjuntos de regras ativos. Isso ajuda os desenvolvedores a entender as regras que os afetam e permite que os auditores examinem as proteções do repositório sem acesso do administrador.

Para mover suas proteções existentes para esse modelo, converta uma regra de proteção de branch por vez em um fluxo guiado. GitHub gera um ou mais conjuntos de regras que preservam o comportamento da regra original. Você pode visualizar os conjuntos de regras, escolher como cada um deles é imposto e verificar o resultado antes de remover a regra de proteção de branch original.

Para obter mais informações sobre os conjuntos de regras, confira Sobre os conjuntos de regras.

Convertendo uma regra de proteção de branch em um conjunto de regras

  1. Em GitHub, acesse a página principal do repositório.

  2. No nome do repositório, clique em Settings. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.

    Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Configurações" é realçada por um contorno laranja-escuro.

  3. Na seção "Code and automation" da barra lateral, clique em Branches.

  4. Em "Regras de proteção de ramificação", localize a regra que você deseja converter e clique em Converter em conjunto de regras.

  5. Defina o nome do conjunto de regras para cada conjunto de regras que será criado nesta conversão.

  6. Examine a seção "Novo comportamento" para entender o que mudará quando você criar o conjunto de regras ou conjuntos de regras.

  7. Em "Status de imposição", escolha como o novo conjunto de regras é imposto. Para obter mais informações, consulte Escolhendo um status de imposição.

  8. Se você escolher Ativo, opcionalmente poderá remover a regra de proteção de branch original como parte da conversão selecionando Excluir regra de proteção de branch depois que a migração for feita.

  9. Clique em Criar conjunto de regras. Se a conversão produzir mais de um conjunto de regras, o botão incluirá o número de conjuntos de regras, por exemplo, Criar dois conjuntos de regras.

Se você mantiver a regra de proteção de branch original, ela continuará a proteger branches correspondentes. Um conjunto de regras ativo é imposto junto com ele, portanto, as alterações devem atender a ambos. Um conjunto de regras de Avaliação registra como ele se comportaria sem impor suas regras.

Observação

A conversão abrange todos os tipos de proteção de branch, com exceção da configuração "Exigir resolução de conversa antes da mesclagem". Em proteções de ramificação, essa configuração existe por conta própria. Em conjuntos de regras, a resolução de conversa faz parte da regra de solicitação de pull e só se aplica quando essa regra está habilitada. Como resultado, essa configuração não mapeia um para um durante a conversão. Consulte Regras disponíveis para conjuntos de regras.

Escolhendo um status de imposição

Ao converter uma regra de proteção de branch, você escolhe um status de imposição para o novo conjunto de regras.

  • Ativo: o conjunto de regras é imposto assim que é criado.
  • Avalie: o conjunto de regras é executado sem impor suas regras, para que você possa examinar como ele se comportaria antes que ele entre em vigor.

Embora o Active esteja selecionado por padrão, considere qual status se ajusta à sua situação:

  • Se você já criou ou migrou regras semelhantes antes e está confiante no resultado, pode usar o Active.
  • Se essa for sua primeira migração, considere começar no modo Avaliar . Você pode confirmar se o novo conjunto de regras se comporta conforme o esperado e, em seguida, excluir a regra de proteção de branch original depois de concluir o teste.

Excluindo a regra de proteção de branch original

Depois de converter uma regra, retorne à página de configurações de Branches . Se você não optou por excluir a regra de proteção de branch durante o processo de conversão e o novo conjunto de regras a abrange totalmente, a regra listada exibirá a mensagem "Essa regra é totalmente coberta por conjuntos de regras e pode ser excluída com segurança", e um botão Excluir aparece no lugar do botão Converter em conjunto de regras .

Antes de excluir a regra original, recomendamos confirmar se o novo conjunto de regras se comporta conforme o esperado, especialmente se você a criou no modoAvaliar. Quando estiver pronto, clique em Excluir para remover a regra de proteção de branch.

Leitura adicional