Skip to main content
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.

Esta versão do GitHub Enterprise foi descontinuada em 2022-06-03. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Sobre como comparar branches nas pull requests

As pull requests exibem diffs para comparar as alterações feitas no branch de tópico com o branch base com o qual você deseja fazer merge.

Observação: ao criar a pull request, é possível alterar o branch base com o qual você está comparando suas alterações. Para obter mais informações, consulte "Criar uma pull request".

É possível exibir alterações propostas em uma pull request na aba Arquivos alterados. Guia Files changed (Arquivos alterados) da pull request

Em vez de exibir os commits em si, você pode ver as alterações propostas como elas aparecerão nos arquivos assim que a pull request passar pelo merge. Os arquivos aparecem em ordem alfabética na guia Files changed (Arquivos alterados). As adições aos arquivos aparecem em verde e são precedidas por um sinal de +, enquanto o conteúdo que foi removido aparece em vermelho e é precedido por um sinal de -.

Opções de exibição de diff

Dica: se estiver com dificuldades para entender o contexto de uma alteração, você poderá clicar em View (Exibir) na guia Files changed (Arquivos alterados) para ver o arquivo todo com as alterações propostas.

Há várias opções de exibição de um diff:

  • A exibição unificada mostra conteúdo atualizado e existente juntos em uma exibição linear.
  • A exibição dividida mostra conteúdo antigo em um lado e novo conteúdo do outro lado.
  • A exibição de diff avançado mostra uma visualização da aparência das alterações depois que a pull request passar por merge.
  • A exibição da origem mostra as alterações na origem sem a formatação da exibição de diff avançado.

Também é possível optar por ignorar alterações de espaço em branco para obter uma exibição mais precisa das alterações importantes em uma pull request.

Menu de opções para exibição de diff

Para simplificar a revisão das alterações em um pull request extenso, é possível filtrar o diff para mostrar apenas os tipos de arquivo selecionados, mostrar arquivos dos quais você é CODEOWNER, ocultar arquivos que você já visualizou ou ocultar arquivos excluídos. Para obter mais informações, consulte "Filtrar aquivos em uma pull request por tipo de arquivo".

Menu suspenso File filter (Filtro de arquivo)

Motivos pelos quais os diffs não serão exibidos

Comparações de diff do Git de três pontos e dois pontos

Existem dois métodos de comparação para o comando git diff; dois pontos (git diff A..B) e três pontos (git diff A...B). Por padrão, os pull requests em GitHub mostram um diff de três pontos.

Comparação do diff de três pontos do Git

A comparação de três pontos mostra a diferença entre o último commit comum de ambos os branches (merge base) e a versão mais recente do branch do tópico.

Comparação do diff de dois pontos Git

A comparação de dois pontos mostra a diferença entre o estado mais recente do branch de base (por exemplo, principal) e a versão mais recente do branch de tópico.

Para ver duas referências de committish em uma comparação de diff de dois pontos no GitHub, você pode editar o URL da página "Comparing changes" (Comparar alterações) do seu repositório. Para obter mais informações, consulte Glossário do Git para "committish" no book site do Pro Git.

Por exemplo, esta URL usa os códigos SHA de sete caracteres encurtados para comparar commits c3a414e e faf7c6f: https://github.com/github/linguist/compare/c3a414e..faf7c6f.

Um diff de dois pontos compara duas referências de committish do Git, como SHAs ou IDs de objeto (OIDs, Object IDs), diretamente entre si. No GitHub, as referências de committish do Git em uma comparação de diff de dois pontos devem ser enviadas por push ao mesmo repositório ou para suas bifurcações.

Se desejar simular um diff de dois pontos em uma pull request e ver uma comparação entre as versões mais recentes de cada branch, você poderá fazer merge do branch base no branch de tópico, o que atualiza o último ancestral comum entre seus branches.

Para obter mais informações sobre os comandos do Git para comparar alterações, consulte "Opções de diff do Git" no site do livro do Pro Git.

Sobre a comparação de três pontos em GitHub

Como a comparação de três pontos é comparada com a base de merge, ela está focada no "que um pull request apresenta".

Ao usar uma comparação de dois pontos, o diff muda quando o branch base é atualizado, mesmo que não tenha feito nenhuma alteração no branch de tópico. Além disso, uma comparação de dois pontos foca no branch de base. Isso significa que qualquer coisa que você adicionar será exibida como ausente no branch base, como se fosse uma exclusão e vice-versa. Como resultado, as alterações que o branch do tópico introduz tornam-se ambíguas.

Em contraste, comparando os branches usando a comparação de três pontos, as alterações no branch de tópico estão sempre no diff se o branch base for atualizado, porque o diff mostra todas as alterações desde que os branches dibergiram.

Fazendo o merge frequentemente

Para evitar confusão, faça o merge do branch de base (por exemplo, principal) no seu branch de tópico com frequência. Ao fazer o merge do branch de base, os diffs mostrados pelas comparações de dois pontos e três pontos são iguais. Recomendamos o merge de um pull request assim que possível. Isso incentiva os contribuidores a diminuir o número de pull requests, o que é recomendado de forma geral.

Leia mais