Fazer merge de uma pull request

Faça merge de uma pull request no branch upstream quando o trabalho estiver finalizado. Qualquer pessoa com acesso push no repositório pode completar o merge.

Sobre merges de pull request

Em uma pull request, você propõe que as alterações feitas em um branch head sejam mescladas em um branch base. Por padrão, qualquer pull request pode sofrer merge a qualquer momento, a menos que o branch head esteja em conflito com o branch base. No entanto, pode haver restrições sobre quando você puder fazer merge de um pull request em um branch específico. Por exemplo, você só pode fazer merge de um pull request no branch-padrão se as verificações de status necessárias forem aprovadas. Para obter mais informações, consulte "Sobre branches protegidos".

Você pode configurar um pull request para fazer merge automaticamente quando todos os requisitos de merge forem atendidos. Para obter mais informações, consulte "Fazer merge automático de um pull request".

Se a pull request apresenta conflitos de merges ou se você deseja testar as alterações antes de fazer merge, é possível fazer checkout da pull request localmente e fazer merge usando a linha de comando.

Você não pode realizar o merge de um rascunho de um pull request. Para obter mais informações sobre pull requests em rascunho, consulte "Sobre pull requests".

O repositório pode ser configurado para que o branch principal de um pull request seja excluído automaticamente quando você faz o merge de um pull request. Para obter mais informações, consulte "Gerenciar a exclusão automática de branches".

Observação: Se você excluir um branch de cabeçalho após o merge do seu pull request, o GitHub irá verificar se há quaisquer solicitações de pull no mesmo repositório que especificam o branch excluído como o branch base. O GitHub atualiza automaticamente quaisquer pull requests, alterando o branch base para o branch base do pull request mesclado. Para obter mais informações, consulte "Sobre branches".

Os pull requests são mesclados usando a opção --no-ff, exceto para pull requests com commits com combinação por squash ou rebase, que são mesclados usando a opção de avançar rapidamente.

Você pode vincular um pull request a um problema para mostrar que uma correção está em andamento e para fechar automaticamente o problema quando alguém fizer merge do pull request. Para obter mais informações, consulte "Vincular um pull request a um problema."

Se decidir que não quer que as alterações em um branch de tópico sofram merge no branch upstream, é possível fechar a pull request sem fazer merge.

Fazer merge de uma pull request

  1. Abaixo do nome do seu repositório, clique em Pull requests.

    Issues tab

  2. Na lista "Pull Requests", clique na pull request da qual deseja fazer merge.

  3. Dependendo das opções de merge habilitadas em seu repositório, é possível:

    Observação: rebase e merge sempre atualização as informações do committer e criarão SHAs de commit novos. Para obter mais informações, consulte "Sobre merges de pull request".

  4. Se solicitado, digite uma mensagem do commit ou aceite a mensagem padrão.

    Para obter informações sobre as mensagens de commit padrão, para combinação por squash, consulte "Sobre merges de pull request". Campo Commit message (Mensagem do commit)

Observação: O seletor de e-mail não está disponível para merge de rebase, que não cria um commit de merge, ou para merge de combinação por squash, que credita o usuário que criou a pull request como o autor do commit cuja combinação foi feita por squash.

  1. Clique em Confirm merge (Confirmar merge), Confirm squash and merge (Confirmar combinação por squash e merge) ou Confirm rebase and merge (Confirmar rebase e merge).
  2. Opcionalmente, exclua o branch. Assim, a lista de branches do repositório ficará limpa.

Para saber mais sobre GitHub CLI, consulte "Sobre GitHub CLI."

Para fazer merge de um pull request, use o subcomando gh pr merge. Substitua pull request pelo número, URL ou branch principal do pull request.

gh pr merge pull-request

Siga as instruções interativas para realizar o merge. Para obter mais informações sobre os métodos de merge que você pode escolher, consulte "Sobre merges do pull request".

Como alternativa, você pode usar sinalizadores para ignorar as instruções interativas. Por exemplo, esse comando irá fazer a combinação por squash dos commits em um único commit com a mensagem de "my squash commit", faça o merge do commit combinado por squash no branch de base e exclua o branch local e o remoto.

gh pr merge 523 --squash --body "my squash commit" --delete-branch

Leia mais

Esse documento ajudou você?

Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.