Se você mantiver um repositório, poderá usar GitHub recursos para tornar as solicitações de pull mais consistentes e fáceis de examinar. A padronização ajuda os colaboradores a saber quais informações fornecer, ajuda os revisores a se concentrarem nas alterações certas e ajuda a proteger branches importantes contra mesclagens acidentais ou arriscadas.
Usando modelos de pull request
Os modelos de solicitação de pull ajudam os colaboradores a fornecer o contexto que seu projeto precisa para revisão. Um modelo pode solicitar aos autores que expliquem a finalidade da alteração, vincular problemas relacionados, incluir anotações de teste ou concluir uma lista de verificação antes de solicitar a revisão.
Os modelos são úteis quando muitos colaboradores abrem solicitações de pull ou quando seu projeto tem expectativas de revisão que devem estar visíveis todas as vezes. Confira Criar um modelo de pull request para o seu repositório, Sobre as listas de tarefas e Vinculando uma pull request a um problema.
Definindo proprietários de código
Os proprietários de código identificam as pessoas ou equipes responsáveis por arquivos ou diretórios específicos. Quando um pull request altera um código com proprietários definidos, GitHub pode solicitar automaticamente uma revisão aos proprietários corretos.
Os responsáveis pelo código ajudam a encaminhar revisões às pessoas com o contexto adequado. Eles são especialmente úteis para áreas confidenciais, como arquivos de segurança, configuração de implantação ou bibliotecas compartilhadas. Consulte Sobre os proprietários de código.
Usando branches protegidos
As ramificações protegidas ajudam a manter ramificações importantes, como main, estáveis. Eles podem exigir condições como passar verificações de status, confirmações assinadas ou aprovar revisões antes que uma solicitação de pull possa se mesclar.
Use branches protegidos quando um branch representa o código de produção, uma linha de lançamento ou outra fonte importante de verdade. Consulte Sobre branches protegidos.
Usando conjuntos de regras
Os conjuntos de regras permitem aplicar políticas do repositório em branches e tags. Eles podem exigir verificações de status, fluxos de trabalho, revisões de pull request ou outras condições antes de as alterações serem aceitas.
Os conjuntos de regras são úteis quando você deseja aplicar regras consistentes em várias ramificações ou quando deseja combinar requisitos de revisão com verificações de segurança automatizadas, como revisão de dependências ou proteção de mesclagem code scanning. Confira Sobre os conjuntos de regras, Como aplicar a revisão de dependências em uma organização e Definir proteção contra mesclagem de verificação de código.
Utilizando conjuntos de regras de push
Com os conjunto de regras por push, é possível bloquear envios por push para um repositório privado ou interno e para toda a rede de bifurcação desse repositório com base em extensões de arquivo, comprimentos de caminho de arquivo, caminhos de arquivo e pasta e tamanhos de arquivo.
As regras de push não exigem nenhum direcionamento de branch porque se aplicam a cada envio por push para o repositório.
Os conjuntos de regras por push permitem:
-
Restringir caminhos de arquivo: impedir que confirmações que incluam alterações em caminhos de arquivo especificados sejam enviadas.
É possível usar a sintaxe
fnmatchpara essa finalidade. Por exemplo, uma segmentação de restriçãotest/demo/**/*impede qualquer envio por push para arquivos ou pastas no diretóriotest/demo/. Uma segmentação de restriçãotest/docs/pushrules.mdimpede envios por push especificamente para o arquivopushrules.mdno diretóriotest/docs/. Para saber mais, confira Criar conjuntos de regras para um repositório. -
Restringir o comprimento do caminho do arquivo: impedir que confirmações que incluam caminhos de arquivo que excedam um limite de caracteres especificado sejam enviadas.
-
Restringir extensões de arquivo: impedir que confirmações que incluam arquivos com extensões de arquivo especificadas sejam enviadas.
-
Restringir o tamanho do arquivo: impedir que confirmações que excedam um limite de tamanho de arquivo especificado sejam enviadas.
Sobre os conjuntos de regras por push para repositórios bifurcados
As regras de push se aplicam a toda a rede de bifurcação de um repositório, garantindo que cada ponto de entrada do repositório esteja protegido. Por exemplo, se você bifurcar um repositório que tenha conjuntos de regras por push habilitados, os mesmos conjuntos de regras por push também se aplicarão ao repositório bifurcado.
Para um repositório bifurcado, as únicas pessoas que têm permissões de bypass para uma regra de push são as pessoas que têm permissões de bypass no repositório raiz.
Os conjuntos de regras de push ajudam a bloquear conteúdo de risco antes que ele entre no repositório. Consulte Sobre os conjuntos de regras.
Usando ferramentas automatizadas para revisar o estilo do código
Ferramentas automatizadas, como linters e formatadores, ajudam a manter o estilo do código consistente em todos os pull requests. Eles podem capturar pequenos problemas automaticamente para que os revisores possam se concentrar no design, na correção e na manutenção.
Você pode executar essas ferramentas como parte de um fluxo de trabalho de integração contínua com GitHub Actions. Consulte Integração contínua.