Sobre o gerenciamento de conjuntos de regras para uma organização
Depois de criar um conjunto de regras no nível da organização, você pode fazer alterações nesse conjunto de regras para alterar o modo como as pessoas podem interagir com os repositórios direcionados. Por exemplo, você pode adicionar regras para proteger melhor as ramificações ou os rótulos nesses repositórios ou pode alternar seu conjunto de regras do modo "Avaliar" para "Ativo" depois de testar seus efeitos na experiência do contribuidor em seus repositórios. Os conjuntos de regras organizacionais que se aplicam a ramificações de um repositório não permitirão mais que o administrador do repositório renomeie as ramificações do repositório de destino ou altere o branch padrão para outra ramificação. Os administradores de repositório podem criar e excluir ramificações, desde que tenham as permissões apropriadas.
Note
O bypass delegado para regras por push está atualmente em versão prévia pública e sujeito a alterações.
O bypass delegado para conjuntos de regras de push permite que você controle quem pode ignorar a proteção push e quais pushes bloqueados devem ser permitidos.
Com o bypass delegado, os colaboradores de um repositório devem solicitar "privilégios de bypass" ao enviar confirmações por push que contenham conteúdo restrito. A solicitação é enviada a um grupo designado de revisores, que aprovam ou negam a solicitação para ignorar regras de push.
Se a solicitação para ignorar as regras de envio for aprovada, o colaborador poderá fazer push do commit com conteúdo restrito. Se a solicitação for negada, o contribuidor deverá remover o conteúdo do commit (ou commits) com o conteúdo restrito antes de enviar por push novamente.
Para configurar o bypass delegado, os proprietários da organização ou os administradores do repositório primeiro criam uma "lista de bypass". A lista de desvio inclui funções e equipes específicas, como administradores de equipe ou de repositório, que supervisionam as solicitações de bypass da proteção de push. Para obter mais informações, confira "Como gerenciar conjuntos de regras para repositórios na sua organização" e "Sobre os conjuntos de regras."
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."
Observação: qualquer pessoa com acesso de leitura em um repositório pode ver os conjuntos de regras ativos que operam nesse repositório.
Como editar um conjunto de regras
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.
-
No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
-
Ao lado da organização, clique em Configurações.
-
Na barra lateral esquerda, na seção "Código, planejamento e automação", clique em Repositório e em Conjuntos de regras.
-
Na página "Conjuntos de regras", clique no nome do conjunto de regras que deseja editar.
-
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".
-
Na parte inferior da página, clique em Salvar alterações.
Como excluir um conjunto de regras
Dica: caso deseje desabilitar um conjunto de regras temporariamente, mas não excluí-lo, defina o status do conjunto de regras como "Desabilitado". Para obter mais informações, confira "Como editar um conjunto de regras".
-
No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
-
Ao lado da organização, clique em Configurações.
-
Na barra lateral esquerda, na seção "Código, planejamento e automação", clique em Repositório e em Conjuntos de regras.
-
Clique no nome do conjunto de regras que deseja excluir.
-
À direita do nome do conjunto de regras, selecione e clique em Excluir conjunto de regras.
Como usar o histórico de conjuntos de regras
Observações:
- 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.
-
No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
-
Ao lado da organização, clique em Configurações.
-
Na barra lateral esquerda, na seção "Código, planejamento e automação", clique em Repositório e em Conjuntos de regras.
-
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.
-
À direita da iteração específica, selecione e clique em Comparar alterações, Restaurar ou Baixar.
Como importar um conjunto de dados
Você pode importar um conjunto de regras de outro repositório ou organização usando o arquivo JSON exportado da seção anterior. Isso pode ser útil se você quiser aplicar o mesmo conjunto de regras a vários repositórios ou organizações.
-
No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
-
Ao lado da organização, clique em Configurações.
-
Na barra lateral esquerda, na seção "Código, planejamento e automação", clique em Repositório e em Conjuntos de regras.
-
Selecione a lista suspensa Novo conjunto de regras e clique em Importar um conjunto de regras.
-
Abra o arquivo JSON exportado.
-
Revise o conjunto de regras importado e clique em Criar.
Como 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 os repositórios da sua organização. 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.
-
No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
-
Ao lado da organização, clique em Configurações.
-
Na barra lateral esquerda, na seção "Código, planejamento e automação", clique em Repositório e em Insights de regras.
-
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, repositório, ator e período.
-
Para ver as regras específicas que foram reprovadas ou que exigiram um bypass, clique em e expanda o nome do conjunto de regras.
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.
-
Em GitHub, acesse a página principal do repositório.
-
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.
-
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:
Status | Descrição |
---|---|
Cancelled | A solicitação foi cancelada pelo contribuidor. |
Completed | A solicitação foi aprovada, e os commits foram enviados por push para o repositório. |
Denied | A solicitação foi analisada e negada. |
Expired | A solicitação expirou. As solicitações são válidas por 7 dias. |
Open | A 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.