Como 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 na mesclagem automática de 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 rebasear os 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.
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.
Observação
Se o repositório remoto der suporte ao Force Push, você poderá habilitá-lo usando Git>Configurações.
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.
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 aberto no editor, poderá selecionar Abrir Editor de Mesclagem.
No Editor de Mesclagem, comece a resolver o conflito usando qualquer um dos seguintes métodos (conforme descrito na captura de tela numerada):
Acesse seus conflitos linha por linha e escolha entre manter o lado direito ou esquerdo marcando as caixas de seleção.
- ou -
Selecione o botão Aceitar Entrada (ou pressione F10) para aceitar todas as alterações recebidas ou o botão Aceitar Atuais (ou pressione F11) para manter sua versão atual com 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 -
Edite manualmente seu código na janela Resultado.
Quando terminar de resolver os conflitos de mesclagem, selecione Aceitar Mesclagem. Repita esse processo para todos os arquivos conflitantes.
Use a janela Alterações do Git para criar uma confirmação de mesclagem e resolver o conflito.
Observação
Se você quiser manter todas as alterações em um arquivo, clique com o botão direito do mouse na seção Alterações não Mescladas e selecione Manter Atual (Local) sem precisar abrir o Editor de Mesclagem.
Dica
Para saber mais sobre as opções de acessibilidade disponíveis para você, confira a seção Atalhos de teclado do Git da página Dicas e truques de acessibilidade do Visual Studio.
Configurar sua ferramenta de comparação
Se você definir seu arquivo .gitconfig
para usar uma ferramenta de comparação de terceiros, como BeyondCompare ou KDiff3, o Visual Studio respeitará essa escolha. Sempre que o Visual Studio exibir uma comparação, ele abrirá uma janela distinta na ferramenta de sua escolha. Para obter um exemplo, confira esta pergunta no StackOverflow.