Compartilhar via


Resolver conflitos de mesclagem no Visual Studio

Quando você mescla um branch com outro, as alterações de arquivo de confirmações em um branch podem entrar em conflito com as alterações no outro. O Git tenta resolver essas alterações usando o histórico em seu repositório para determinar a aparência dos arquivos mesclados. Quando não está claro como mesclar alterações, o Git interrompe a mesclagem e informa quais arquivos entram em conflito.

Evitar conflitos de mesclagem

O Git é bom em mesclar automaticamente as alterações de arquivo na maioria das circunstâncias, desde que o conteúdo do arquivo não mude drasticamente entre confirmações. Se o branch estiver muito atrás do branch principal, considere o rebasing dos branches antes de abrir uma solicitação de pull. Os branches com base trocada serão mesclados no branch principal sem conflitos.

Resolver conflitos de mesclagem

  • Se você estiver colaborando com outras pessoas no mesmo branch, poderá ver conflitos de mesclagem ao enviar suas alterações por push.

    Captura de tela do conflito de mesclagem após um push.

  • O Visual Studio detecta se o branch local no qual você está trabalhando está atrás de seu branch de rastreamento remoto e, em seguida, oferece opções para escolher.

    Captura de tela das opções disponíveis quando o branch local está atrasado em relação ao branch remoto.

    Nota

    Se o repositório remoto oferecer suporte ao Force Push, você poderá habilitá-lo usando as Configurações do Git>.

    Neste exemplo, selecione Pull e Push para incluir as alterações introduzidas no repositório remoto. Se houver conflitos de mesclagem quando você estiver efetuando pull de alterações ou tentando mesclar dois branches, o Visual Studio permitirá que você saiba na janela Alterações do Git, na janela Repositório Git e em todos os arquivos que têm conflitos.

    Captura de tela de uma notificação de conflito de mesclagem.

  • A janela Alterações do Git mostra uma lista de arquivos com conflitos em Alterações Não Mescladas. Para começar a resolver conflitos, clique duas vezes em um arquivo. Ou se você tiver um arquivo com conflitos abertos no editor, poderá selecionar Abrir Editor de Mesclagem.

    Captura de tela do status de conflito de mesclagem na janela Alterações do Git.

  • No Editor de Mesclagem, comece a resolver o conflito usando qualquer um dos seguintes métodos (conforme descrito na captura de tela numerada):

    1. Revise seus conflitos linha por linha e escolha entre manter o lado esquerdo ou direito marcando as caixas de seleção.

      - ou -

    2. Selecione o botão Aceitar Entrada (ou pressione F10) para aceitar todas as alterações de entrada ou o botão Manter Atual (ou pressione F11) para manter sua versão atual de todas as alterações conflitantes. Você pode fazer a mesma coisa marcando uma das caixas de seleção na parte superior de qualquer quadro lado a lado.

      - ou -

    3. Edite manualmente seu código na janela Resultado.

    Captura de tela que mostra como resolver um conflito de mesclagem no Visual Studio 2022.

    Dica

    Se você não gostar do layout padrão no Editor de Mesclagem, fique à vontade para alterá-lo usando o menu suspenso de engrenagem.

    Captura de tela das opções de layout do Editor de Mesclagem.

    Por exemplo, a captura de tela a seguir mostra a aparência da exibição vertical:

    Captura de tela do modo de exibição vertical na interface do usuário do Editor de Mesclagem.

  • Quando terminar de resolver os conflitos de mesclagem, selecione Aceitar Mesclagem. Repita esse processo para todos os arquivos conflitantes.

    Captura de tela da ação Aceitar Mesclagem no Visual Studio 2022.

  • Use a janela Alterações do Git para criar uma confirmação de mesclagem e resolver o conflito.

    Captura de tela de como criar uma confirmação de mesclagem usando a janela Alterações do Git.

    Nota

    Se quiser manter todas as alterações em um arquivo, clique com o botão direito do mouse nele na seção Alterações Não Mescladas e selecione Manter Atualizado (Local) sem precisar abrir o Editor de Mesclagem.

    Captura de tela da opção de menu Manter Atual.

Dica

Para saber mais sobre as opções de acessibilidade disponíveis para você, consulte a seção de atalhos de teclado do Git da página de dicas e truques de acessibilidade para o Visual Studio .

Configurar sua ferramenta de comparação

Se você definir seu .gitconfigarquivo para usar uma ferramenta de comparação de terceiros, como BeyondCompare ou KDiff3, o Visual Studio o respeitará. Sempre que o Visual Studio normalmente exibe uma diferença, uma janela separada é aberta na ferramenta de sua escolha. Para obter um exemplo, consulte esta pergunta Stack Overflow.