O Subversion, Git, Mercurial e outros suportam fusões de três vias (combinando a mina, a deles e a revisão "base") e suportam ferramentas gráficas para resolver conflitos.
Qual ferramenta você usa? Windows, Mac OS X, Linux, gratuito ou comercial, você escolhe.
Aqui estão algumas que eu já usei ou ouvi falar, apenas para iniciar a conversa:
(Reconheço que isso é como a Melhor Ferramenta de Diferença , mas é diferente porque me concentro explicitamente nas ferramentas de mesclagem de três vias; o WinMerge está fora da lista, por exemplo.)
version-control
merge
dvcs
Dan Fabulich
fonte
fonte
Respostas:
Código aberto KDiff3 , plataforma cruzada
A mesma interface para Linux e Windows, algoritmo muito inteligente para resolver conflitos, expressões regulares para resolver automaticamente conflitos, integra-se ao ClearCase, SVN, Git, MS Visual Studio, arquivo mesclável editável, compara diretórios
Sua navegação pelo teclado é excelente: ctrl-setas para navegar pelas diferenças, ctrl-1, 2, 3 para fazer a mesclagem.
Além disso, consulte https://stackoverflow.com/a/2434482/42473
fonte
kdiff3
resposta para um exemplo.kdiff3
felizmente difere e mescla árvores de diretório inteiras e o faz há muitos anos! Algumas ferramentas (comogit
) podem iniciá-lo apenas por arquivo, mas outras (como mercurial) permitem que você trilhe repositórios inteiros de diferenças / mesclagens.Acabei de verificar o P4merge desde que ouvi falar em outro artigo do blog:
Interface muito lisa e GRÁTIS! Eu sou um usuário fiel do Araxis Merge, mas, considerando que isso é gratuito e incrível, recomendamos que você verifique.
fonte
O Beyond Compare 3 Pro suporta a fusão de três vias e é uma ferramenta de mesclagem bastante impressionante. É comercial (mas vale a pena, IMHO) e está disponível no Windows, Linux e Mac OS X.
Como apontado em um comentário, também é barato.
Nota: Se não houver um conjunto de mesclagem, ou seja, marcadores de mesclagem residentes no arquivo de destino, o Beyond Compare não oferecerá comparação / edição de arquivo de três vias. O Beyond Compare diz que esse recurso está na lista deles .
Nota: a mesclagem bidirecional é um recurso somente da edição Pro do Beyond Compare 3
fonte
Meld Diff Viewer
Eu tive apenas boas experiências trabalhando com Meld. Eu o uso quando tenho que fazer mesclagens de código confusas entre ramificações. É simples de usar e possui uma interface limpa.
No Ubuntu, a instalação é tão simples quanto:
sudo apt-get install meld
fonte
vimdiff. É ótimo. Tudo que você precisa é de uma janela de um metro e meio de largura.
fonte
Mesclagem do diferencial da engrenagem de origem :
Mescla de verdade, multi-plataforma mescla e é totalmente gratuita para uso comercial ou pessoal.
fonte
Araxis Merge . É comercial, mas vale a pena ... Está disponível para Windows e Mac OS X.
fonte
O algoritmo de resolução de conflitos do Kdiff3 é realmente impressionante.
Mesmo quando o subversion indica um conflito, o Kdiff3 o resolve automaticamente. Existem versões para Windows e Linux com a mesma interface. É possível integrá-lo ao Tortoise e ao seu shell linux.
Está na lista do meu software de código aberto favorito. Uma das primeiras ferramentas que instalo em qualquer máquina.
Você pode configurá-lo como a ferramenta diff padrão no Subversion, Git, Mercurial e ClearCase. Ele também resolve quase todos os conflitos do ClearCase. No Windows, ele possui uma ótima integração com o Windows Explorer: selecione dois arquivos e clique com o botão direito do mouse para compará-los ou clique com o botão direito do mouse para 'salvar em um arquivo posterior' e, em seguida, selecione outro para comparar.
O arquivo mesclado é editável. Possui atalhos de teclado lisos.
Você também pode usá-lo para comparar e mesclar diretórios. Vejo:
Um recurso avançado é usar expressões regulares para definir mesclagens automáticas.
Meu único incômodo é que é um pouco difícil compilar se não estiver presente no seu repositório de distribuição favorito.
fonte
Eu amo Ediff . Ele vem embutido no GNU Emacs .
Para fazer uma comparação de três vias, use
ediff-files3
(para selecionar três arquivos) ouediff-buffer3
(para selecionar três buffers já abertos). Você verá uma tela assim:Observe o destaque da palavra-diferença.
Você pode bater
n
oup
para ir para a próxima / anterior diffs, enquanto queab
irá copiar a região de tampão A (o mais à esquerda) para o buffer b (o do meio), e da mesma forma para outras combinações de duas letras dea
,b
,c
;rb
restaurará a região no buffer b. Clique em?
para obter um menu de ajuda rápida ou leia o manual sobre difusão do diff3 no Emacs .fonte
ediff-merge-with-ancestor
), mas eu não tenho certeza se ele tem 3 painéis ou 4, e também a imagem acima não reflete isso.ab
copiará a região do buffer a para o buffer b. Eu não acho que exista uma versão de quatro janelasediff
ainda. (Eu seiemerge
usos tamponar uma saída dedicada vez, masemerge-files-with-ancestor
não mostram o ancestral só a usa para adivinhar a versão correta por ver qual deles concorda com a ancestral.)Ultracompare . É realmente bom, lida bem com arquivos grandes (mais de 1 GB), está disponível para Windows / Mac / Linux e é comercial, mas vale a pena.
fonte
Difusa é uma ferramenta de mesclagem de três vias fácil de usar. Ele suporta todas as plataformas e sistemas de controle de versão que você mencionou e pode comparar mais de três arquivos ao mesmo tempo.
fonte
xxdiff se você estiver no Linux.
fonte
O resumo é que achei o ECMerge um ótimo produto, embora comercial. http://www.elliecomputing.com/products/merge_overview.asp
Também concordo com MrTelly que o Ultracompare é muito bom. Um recurso interessante é que ele compara os documentos RTF e Word, o que é útil quando você termina a programação em word com os vendedores e eles não gerenciam seus documentos corretamente.
fonte