Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Sobre verificações de status obrigatórias

As verificações de status obrigatórias garantem que todos os testes de CI sejam aprovados antes que os colaboradores possam fazer alterações em um branch protegido.

Protected branches are available in public repositories with GitHub Free, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see "GitHub's products."

Se você aplicou proteções de branch no repositório, será possível configurar as verificações de status obrigatórias. Para obter mais informações, consulte "Configurar branches protegidos" e "Habilitar verificações de status obrigatórias". As verificações de status obrigatórias podem ser verificações ou status. Para obter mais informações, consulte "Sobre verificações de status".

Depois de habilitar as verificações de status obrigatórias, todas elas deverão ser aprovadas para que os branches possam passar por merge no branch protegido. Todos os commits devem ser enviados por push a outro branch e sofrer merge ou push diretamente no branch protegido, após aprovação de todas as verificações de status obrigatórias.

Fazer merge do branch protegido

Observação: Qualquer pessoa ou integração com permissões de gravação em um repositório pode configurar o estado de qualquer verificação de status no repositório. O GitHub não analisa se o autor de uma verificação está autorizado a criar uma verificação com um determinado nome ou modificar um status existente. Você deve verificar se o autor de cada status (listado na caixa de merge) é conhecido, antes de fazer merge de uma pull request.

Se você tiver uma verificação e um status com o mesmo nome e selecionar esse nome como uma verificação de status obrigatória, a verificação e o status serão obrigatórios. Para obter mais informações, consulte "Verificações" na documentação do GitHub Developer.

Após configuração das verificações de status obrigatórias, o branch deverá ser atualizado com o branch base antes da ação de merge. Isso garante que o branch foi testado com o código mais recente do branch base. Se o branch estiver desatualizado, você precisará fazer merge do branch base no seu branch.

Observação: também é possível atualizar o seu branch com o branch base usando o rebase do Git.

Branch desatualizado

Não será possível fazer push de alterações locais em um branch protegido enquanto todas as verificações de status obrigatórias não forem aprovadas. Sendo assim, você receberá uma mensagem de erro semelhante a esta:

remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Required status check "ci-build" is failing

Observação: as pull requests que são atualizadas e passam nas verificações de status obrigatórias podem sofrer merge localmente e enviadas por push ao branch protegido. Isso pode ser feito sem verificações de status em execução no próprio commit de merge.

Os administradores de um repositório poderão fazer merge de um branch protegido mesmo se as verificações de status obrigatórias tiverem falhado ou estiverem pendentes. Você pode exigir que os administradores estejam sujeitos às verificações de status obrigatórias.

Merge do branch protegido pelo administrador

Os administradores também poderão fazer merge de um branch protegido mesmo se o branch não estiver atualizado com o branch base.

Você pode optar por tornar mais ou menos rígidas as verificações de status, se quiser exigir que seu branch seja atualizado com o branch base antes de sofrer merge.

Further reading

Pergunte a uma pessoa

Não consegue encontrar o que procura?

Entrar em contato