O que é uma boa (gratuita) ferramenta de mesclagem visual para o Git? (no windows) [fechado]


154

Uma pergunta semelhante já foi feita, mas para o Ubuntu.

Seria útil saber se a ferramenta é gratuita como na cerveja ou como na liberdade.

Além disso, seria bom saber os altos e baixos da ferramenta.

Respostas:


72

No Windows, uma boa ferramenta de difusão / mesclagem de três vias permanece kdiff3 (o WinMerge , por enquanto, ainda é baseado em duas direções, com pendência do WinMerge3)

Consulte " Como você mescla o GIT no Windows? " E esta configuração .


Atualização 7 anos depois (agosto de 2018): Artur Kędzior menciona nos comentários :

Se vocês acontecer de você usar Visual Studio (Community Edition é gratuito), tente a ferramenta que é fornecido com ele: vsDiffMerge.exe. É realmente incrível e fácil de usar.


1
Apesar de favorecer o BC, vou verificar esta ferramenta.
Preet Sangha

3
@ Preet: BC continua sendo o melhor;) Mas para uma ferramenta gratuita (multiplataforma), o kdiff3 não é ruim.
VonC 30/08/11

mas definitivamente também não é tão bom :) Eu costumo achar mais fácil usar meu editor de código comum.
Warpzit 26/03

1
@Warpzit Concordo que há um pouco de uma curva de aprendizado, mas eu estou acostumado a isso agora;)
VonC

1
@ ArturKędzior Obrigado. Incluímos seu comentário na resposta para obter mais visibilidade.
VonC 16/08/19

72

Eu também usei Meld . Está escrito em python. Existe um instalador oficial para Windows que funciona bem.

Instale-o e configure-o como sua ferramenta de fusão padrão.

$ git config --global merge.tool "meld"
$ git config --global mergetool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"

Se estiver usando um cliente GUI GIT, tente o seguinte (instruções para o SourceTree, ajuste de acordo)

  • No SourceTree, vá para Ferramentas / Opções / Dif.
  • Em External Diff Tool, escolha Personalizado
  • Entre C:\Program Files (x86)\Meld\meld.exeno comando Diff e $LOCAL $REMOTEnos argumentos
  • Em Merge Tool, escolha Personalizado
  • Entre C:\Program Files (x86)\Meld\meld.exeno comando Diff e $LOCAL $MERGED $REMOTEnos argumentos

9
Obrigado, Meld é muito legal :) É muito claro e fácil ver o que está acontecendo. Obrigado por postar as instruções de instalação. Eu estaria perdido sem eles.
precisa

5
Se você estiver usando o cygwin / babun, substitua a 2ª opção por:git config --global mergetool.meld.path "/cygdrive/c/Program Files (x86)/Meld/Meld.exe"
tempestSA

1
1 para a configuração git, que utilizado com P4Merge abaixo:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Mark C

@Gordolio, Existe uma interface de usuário "simples" ou "baixa resolução" para o meld? Os gráficos são um pouco bonitos demais, o que engasga totalmente com arquivos enormes.
Pacerier 2/11

1
Eu tentei o Meld e foi bom, com alguns visuais legais, mas no final fui para o Beyond Compare, com pagamento, e fiquei muito feliz. Um ponto negativo de Meld é que os botões não fornecem descrições do mouseover. Outro - Além da comparação fornece botões para passar de uma diferença para a seguinte. Outro - Além da comparação mostra os caminhos do arquivo nas barras de título da janela. Meld certamente era "bom o suficiente", mas prefiro pagar pelo Beyond Compare. (E eu não tenho afiliação com o Beyond Compare).
Stephen Hosking

28

Estou usando o P4Merge , é gratuito e multiplataforma.

P4Merge


1
Ainda está livre? Não parece ser totalmente gratuito.
null_pointer

4
Sim, ainda é 100% gratuito, mas a página de download o oculta um pouco.
Daniel Little

8
É gratuito, como Daniel disse, mas quando você executa o instalador, precisa desativar todas as opções, exceto a "Visual Merge Tool". Caso contrário, ele solicitará que você se conecte a um servidor Perforce. Funciona muito bem com o SourceTree.
John

11
Uma vez instalado, configure como mergetool usando:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Mark C

1
Tentar descobrir como baixar a versão para Windows do p4merge usando o seu link parece uma tarefa bastante difícil. Não há nenhum link de download claro que eu possa ver.
Artif3x

25

Eu não conheço uma boa ferramenta gratuita, mas o winmerge está ok (ish) . Eu tenho usado o além comparar ferramentas desde 1999 e não posso classificá-lo o suficiente - custa cerca de 50 dólares e esse investimento pagou por si mesmo em economia de tempo mais do que eu posso imaginar.

Às vezes, as ferramentas devem ser pagas se forem muito, muito boas.


5
+1 por mencionar opções pagas.
Eckes

1
Winmerge é péssimo. A interface do usuário dificulta a indicação da esquerda da direita.
Pacerier 02/11/2015

1
Eu usei o WinMerge por anos e acho ótimo. Então mudei para o git para controle de versão e precisava de uma GUI para comparação de versões. Primeiro, tentei o Meld e o achei bom, mas sem recursos. O Beyond Compare resolveu isso para mim e estou feliz em pagar por isso.
Stephen Hosking

16
  • O TortoiseMerge (parte do ToroiseSVN) é muito melhor que o kdiff3 (eu uso os dois e posso comparar );
  • O p4merge (da Perforce) também funciona muito bem;
  • Difuso não é tão ruim;
  • O Diffmerge do SourceGear possui apenas uma falha no processamento de arquivos UTF8 sem BOM, tornando inutilizável para este caso.

O TortoiseGitMerge é realmente muito bom - eu não conheço o kdiff3, mas nunca fiquei infeliz ou perdi nada no TortoiseGitMerge, ele me permite fazer mesclagens de duas e três vias de maneira muito rápida e intuitiva.
mindplay.dk

@ mindplay.dk - TortoiseGitMerge é (a maior parte) do ol bom TortoiseMerge sob o capô
preguiçoso Badger

O TortoiseMerge não suporta dir-diff
andrew.rockwell

1

Outra opção gratuita é o jmeld: http://keeskuip.home.xs4all.nl/jmeld/

É uma ferramenta java e, portanto, pode ser usada em várias plataformas.

Mas (como Preet mencionou em sua resposta), grátis nem sempre é a melhor opção. A melhor ferramenta diff / merge que eu já me deparei é o Araxis Merge . A edição padrão está disponível por 99 euros, o que não é muito.

Eles também fornecem uma documentação sobre como integrar o Araxis ao msysGit.

Se você deseja usar uma ferramenta gratuita, o JMeld chega bem perto do Araxis.


Também ouvi muitas coisas boas sobre o Araxis.
Preet Sangha

-1

O que há de errado em usar o Git For Windows? Na exibição do repositório, há um ícone da ramificação em que você está (na parte superior) e, se você clicar em gerenciar, poderá arrastar e soltar de uma maneira muito visual e conveniente.


7
Acho que a pergunta era sobre a resolução de conflitos de mesclagem.
Leif Gruenwoldt
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.