Skip to main content

Esta versão do GitHub Enterprise Server foi descontinuada em 2024-09-25. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, segurança aprimorada e novos recursos, atualize para a última versão do GitHub Enterprise Server. Para obter ajuda com a atualização, entre em contato com o suporte do GitHub Enterprise.

Trabalhar com hooks pre-receive

Os ganchos pré-recebimento impõem regras para contribuições antes que o push dos commits seja efetuado em um repositório.

Os hooks pre-receive executam testes em um código do qual foi feito push em um repositório, para garantir que as contribuições atendam à política do repositório ou da organização. Se o conteúdo do commit passar nos testes, o push será aceito no repositório. Caso o conteúdo do commit não passe nos testes, o push não será aceito.

Se o push não for aceito, você receberá uma mensagem de erro correspondente ao hook pre-receive com falha.

$ git push
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 916 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: always_reject.sh: failed with exit status 1
remote: error: rejecting all pushes
To https://54.204.174.51/hodor/nope.git
 ! [remote rejected] main -> main (pre-receive hook declined)
error: failed to push some refs to 'https://54.204.174.51/hodor/nope.git'

O administrador de site do GitHub Enterprise Server pode criar e remover hooks pre-receive da organização ou do repositório e permitir que os administradores da organização ou do repositório habilitem ou desabilitem hooks pre-receive. Para saber mais, confira Aplicar política com hooks pre-receive.