Skip to main content

Gerenciar conjuntos de regras para um repositório

Você pode editar, monitorar e excluir conjuntos de regras existentes em um repositório para alterar como as pessoas podem interagir com branches e tags específicas.

Quem pode usar esse recurso?

Qualquer pessoa com acesso de leitura em um repositório pode ver os conjuntos de regras do repositório. As pessoas com acesso de administrador em um repositório ou uma função personalizada com a permissão "editar regras de repositório", podem criar, editar e excluir conjuntos de regras de um repositório e ver os insights do conjunto de regras. Para obter mais informações, confira "Sobre as funções personalizadas do repositório".

Rulesets are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, and GitHub Enterprise Cloud. For more information, see "GitHub’s plans."

Push rulesets are available for the GitHub Enterprise Cloud plan in internal and private repositories, forks of repositories that have push rulesets enabled, and organizations in your enterprise.

Depois de criar um conjunto de regras, é possível fazer alterações nele. Por exemplo, você pode adicionar regras para proteger melhor seus branches ou tags, ou pode alternar seu conjunto de regras do modo "Avaliar" para "Ativo" depois de testar seus efeitos na experiência do colaborador para seu repositório.

Use as APIs REST e GraphQL para gerenciar conjuntos de regras. Para obter mais informações, confira "Pontos de extremidade da API REST para regras" e "Mutações."

Tip

Se você for proprietário de uma organização, poderá criar conjuntos de regras no nível da organização. Você pode aplicar esses conjuntos de regras a repositórios específicos na sua organização e a branches específicos nesses repositórios. Para obter mais informações, confira "Criar conjuntos de regras para repositórios na sua organização".

Exibir conjuntos de regras para um repositório

Na página “Rulesets”, qualquer pessoa com acesso de leitura no repositório ver os conjuntos de regras ativos direcionados a determinada restrição de branch, tag ou push. Você também verá os conjuntos de regras em execução no modo “Evaluate”, que não são impostos.

Para conjuntos de regras por push para repositórios bifurcados, a página "Conjuntos de regras" indicará que o conjunto de regras é gerenciado pelo repositório de origem onde a regra é aplicada.

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

  2. Na exibição da árvore de arquivos à esquerda, selecione o menu suspenso do branch e clique em Exibir todos os branches. Você também pode encontrar o menu suspenso do branch na parte superior do editor de arquivos integrado.

    Captura de tela do modo de exibição de árvore de arquivos de um repositório. Há um menu suspenso para branches expandido e realçado em laranja escuro.

  3. À esquerda do nome do branch, clique em .

  4. Opcionalmente, para filtrar os resultados, clique nas guias ou use a barra de pesquisa "Pesquisar branches".

  5. Clique no nome do conjunto de regras que deseja ver.

Como editar um conjunto de regras

Note

Se um conjunto de regras tiver sido criado no nível da organização, você não poderá editá-lo nas configurações do repositório. Se você tiver permissão para editar o conjunto de regras, faça isso nas configurações da sua organização. Para obter mais informações, confira "Como gerenciar conjuntos de regras para repositórios na sua organização".

Você pode editar um conjunto de regras para alterar partes do conjunto de regras, como o nome, ignorar permissões ou regras. Você também pode editar um conjunto de regras para alterar o status dele, por exemplo, se desejar habilitar ou desabilitar temporariamente um conjunto de regras.

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

  2. Abaixo do nome do repositório, clique em Configurações. 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 barra lateral esquerda, em "Código e automação", clique em Regras e em Conjuntos de regras.

    Captura de tela da barra lateral da página "Configurações" de um repositório. O submenu "Regras" está expandido, e a opção "Conjuntos de regras" está realçada em laranja.

  4. Na página "Conjuntos de regras", clique no nome do conjunto de regras que deseja editar.

  5. Altere o conjunto de regras conforme necessário. Para obter informações sobre as regras disponíveis, confira "Regras disponíveis para conjuntos de regras".

  6. Na parte inferior da página, clique em Salvar alterações.

Excluir um conjunto de regras

Tip

Caso deseje desabilitar um conjunto de regras temporariamente, mas não excluí-lo, defina o status do conjunto de regras como "Disabled". Para obter mais informações, confira "Como editar um conjunto de regras".

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

  2. Abaixo do nome do repositório, clique em Configurações. 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 barra lateral esquerda, em "Código e automação", clique em Regras e em Conjuntos de regras.

    Captura de tela da barra lateral da página "Configurações" de um repositório. O submenu "Regras" está expandido, e a opção "Conjuntos de regras" está realçada em laranja.

  4. Clique no nome do conjunto de regras que deseja excluir.

  5. À direita do nome do conjunto de regras, selecione e clique em Excluir conjunto de regras.

    Captura de tela da página usada para editar um conjunto de regras. Abaixo de um botão rotulado com três pontos, uma opção rotulada "Excluir conjunto de regras" está realçada em laranja.

Como usar o histórico de conjuntos de regras

Note

  • O histórico do conjunto de regras está em versão prévia pública e sujeito a alterações.
  • Somente as alterações feitas em um conjunto de regras após a versão prévia pública, em 11 de outubro de 2023, estão incluídas no histórico de conjuntos de regras.

Você pode visualizar todas as alterações a um conjunto de regras e reverter para uma iteração específica. Você também pode baixar um arquivo JSON contendo a configuração do conjunto de regras em uma iteração específica. A lista de bypass de um conjunto de regras é excluída do arquivo JSON exportado.

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

  2. Abaixo do nome do repositório, clique em Configurações. 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 barra lateral esquerda, em "Código e automação", clique em Regras e em Conjuntos de regras.

    Captura de tela da barra lateral da página "Configurações" de um repositório. O submenu "Regras" está expandido, e a opção "Conjuntos de regras" está realçada em laranja.

  4. Para visualizar o histórico de alterações ao conjunto de regras, selecione à direita do nome do conjunto de regras e clique em Histórico.

    Captura de tela da página de conjuntos de regras do repositório. Abaixo de um botão rotulado com três pontos, uma opção rotulada "Histórico" está contornada em laranja.

  5. À direita da iteração específica, selecione e clique em Comparar alterações, Restaurar ou Baixar.

    Captura de tela da página do histórico de conjuntos de regras do repositório. Um menu suspenso, rotulado com três pontos, está expandido e realçado com um contorno laranja.

Como importar um conjunto de dados

Você pode importar um conjunto de regras de outro repositório ou organização usando um arquivo JSON. Isso pode ser útil se você quiser aplicar o mesmo conjunto de regras a vários repositórios ou organizações.

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

  2. Abaixo do nome do repositório, clique em Configurações. 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 barra lateral esquerda, em "Código e automação", clique em Regras e em Conjuntos de regras.

    Captura de tela da barra lateral da página "Configurações" de um repositório. O submenu "Regras" está expandido, e a opção "Conjuntos de regras" está realçada em laranja.

  4. Selecione a lista suspensa Novo conjunto de regras e clique em Importar um conjunto de regras.

    Captura de tela da página de conjuntos de regras do repositório. Um menu suspenso rotulado “Novo conjunto de regras" é expandido e a opção "Importar um conjunto de regras" é realçada com um contorno laranja.

  5. Abra o arquivo JSON exportado.

  6. Revise o conjunto de regras importado e clique em Criar.

Exibir insights de conjuntos de regras

Você pode visualizar os insights para conjuntos de regras para ver como os conjuntos de regras estão afetando um repositório. Na página "Insights de Regra", você verá um linha do tempo das ações do usuário a seguir. Use filtros para encontrar o que está procurando.

  • Ações que foram verificadas em relação a um ou mais conjuntos de regras e foram aprovadas.
  • Ações que foram verificadas em relação a um ou mais conjuntos de regras e não foram aprovadas.
  • Ações em que alguém ignorou um ou mais conjuntos de regras.

Se um conjunto de regras estiver em execução no modo "Avaliar", você poderá ver as ações que teriam sido aprovadas ou não se o conjunto de regras estivesse ativo.

Captura de tela da página "Insights de Regras". Três ações estão listadas: uma marcada como "aprovado", uma marcada como "ignorar" e outra marcada como "reprovado" com um rótulo "avaliar".

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

  2. Abaixo do nome do repositório, clique em Configurações. 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 barra lateral esquerda, em "Código e automação", clique em Regras e em Insights.

    Captura de tela da barra lateral da página "Configurações" de um repositório. O submenu "Regras" está expandido, e a opção "Insights" está realçada em laranja.

  4. Na página "Insights de Regras", use os menus suspensos na parte superior da página para filtrar as ações por conjunto de regras, branch, ator e período.

  5. Para ver as regras específicas que foram reprovadas ou que exigiram um bypass, clique em e expanda o nome do conjunto de regras.

    Captura de tela da página "Insights de Regras". À direita de um evento rotulado "octocat criado sem permissão", um ícone de três pontos horizontais está realçado em laranja.

  6. Opcionalmente, revise os detalhes da fila de mesclagem para pull requests correspondentes no mesmo grupo de mesclagem.

Gerenciamento de solicitações para ignorar regras de push

Note

O bypass delegado para regras por push está atualmente em versão prévia pública e sujeito a alterações.

Você pode visualizar e gerenciar todas as solicitações de privilégios de desvio na página "Solicitações de bypass", localizada nas configurações de Regras do repositório.

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

  2. Abaixo do nome do repositório, clique em Configurações. 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. Clique em Ignorar Solicitações.

Você pode filtrar solicitações por aprovador (membro da lista de bypass), solicitante (colaborador que faz a solicitação), prazo e status. Os seguintes status são atribuídos a uma solicitação:

StatusDescrição
CancelledA solicitação foi cancelada pelo contribuidor.
CompletedA solicitação foi aprovada, e os commits foram enviados por push para o repositório.
DeniedA solicitação foi analisada e negada.
ExpiredA solicitação expirou. As solicitações são válidas por 7 dias.
OpenA solicitação ainda não foi examinada ou foi aprovada, mas os commits não foram enviados por push para o repositório.

Quando um contribuidor solicita privilégios de bypass para enviar um commit com conteúdo restrito, todos os membros da lista de bypass recebem uma notificação por email com um link para a solicitação. Os membros da lista de bypass terão 7 dias para examinar e aprovar ou negar a solicitação antes que ela expire.

O contribuidor é notificado da decisão por email e deve tomar as medidas necessárias. Se a solicitação for aprovada, o contribuidor poderá enviar o commit com conteúdo restrito para o repositório. Se a solicitação for negada, o contribuidor deverá remover o conteúdo restrito do commit para enviar o commit com êxito ao repositório.