¿Qué es una buena herramienta de combinación visual (gratuita) para Git? (en ventanas) [cerrado]

154

Una pregunta similar ya se le pidió, pero para Ubuntu.

Sería útil saber si la herramienta es gratuita como en cerveza o en liber.

Además, sería bueno saber de arriba a abajo de la herramienta.

Tal Galili
fuente

Respuestas:

73

En Windows, una buena herramienta de combinación / diferencia de 3 vías sigue siendo kdiff3 ( WinMerge , por ahora, todavía está basada en 2 vías, pendiente de WinMerge3)

Consulte " ¿Cómo se fusiona en GIT en Windows? " Y esta configuración .


Actualización 7 años después (agosto de 2018): Artur Kędzior menciona en los comentarios :

Si ustedes pasar a utilizar Visual Studio (Community Edition es gratis), trata de la herramienta que se suministra con ella: vsDiffMerge.exe. Es realmente asombroso y fácil de usar.

VonC
fuente
1
A pesar de favorecer a BC, voy a comprobar esta herramienta.
Saluda a Sangha el
3
@Preet: BC sigue siendo el mejor;) Pero para una herramienta gratuita (multiplataforma), kdiff3 no es malo.
VonC
pero definitivamente tampoco es tan bueno :) Tiendo a encontrarme más fácil usar mi editor de código regular.
Warpzit
1
@Warpzit Estoy de acuerdo en que hay una pequeña curva de aprendizaje, pero ya estoy acostumbrada;)
VonC
1
@ ArturKędzior Gracias. He incluido tu comentario en la respuesta para mayor visibilidad.
VonC
72

También he usado Meld . Está escrito en python. Hay un instalador oficial para Windows que funciona bien.

Instálelo y luego configúrelo como su herramienta de combinación predeterminada.

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

Si usa un cliente GUI GIT, intente lo siguiente (instrucciones para SourceTree, ajústelo en consecuencia)

  • En SourceTree, vaya a Herramientas / Opciones / Diferencia
  • En External Diff Tool, elija Personalizado
  • Ingrese C:\Program Files (x86)\Meld\meld.exeen Comando Dif. Y $LOCAL $REMOTEen Argumentos
  • En Merge Tool, elija Personalizado
  • Ingrese C:\Program Files (x86)\Meld\meld.exeen Comando Dif. Y $LOCAL $MERGED $REMOTEen Argumentos
Gordolio
fuente
9
Gracias, Meld es realmente agradable :) Es muy claro y fácil ver qué está pasando. Gracias por publicar las instrucciones de instalación. Me hubiera perdido sin esos.
Daniel Tonon
55
Si está usando cygwin / babun, reemplace la segunda opción con:git config --global mergetool.meld.path "/cygdrive/c/Program Files (x86)/Meld/Meld.exe"
tempestSA
1
+1 para la configuración de git, lo usé con P4Merge a continuación:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Mark C
@Gordolio, ¿hay una interfaz de usuario "simple" o de "baja resolución" para la fusión? La gráfica es un poco demasiado hermosa, que ahoga por completo de archivos de gran tamaño.
Pacerier
1
Probé Meld y fue bueno, con algunas imágenes agradables, pero al final elegí Beyond Compare, con paga, y he estado muy contento. Una desventaja de Meld es que los botones no dan descripciones del mouseover. Otro: Beyond Compare proporciona botones para pasar de una diferencia a la siguiente. Otro: Beyond Compare muestra las rutas del archivo en las barras de título de la ventana. Meld fue ciertamente "suficientemente bueno", pero prefiero pagar por Beyond Compare. (Y no tengo afiliación con Beyond Compare).
Stephen Hosking
28

He estado usando P4Merge , es gratis y multiplataforma.

P4Merge

Daniel Little
fuente
1
¿Sigue siendo gratis? No parece ser gratis en absoluto.
null_pointer
44
Sí, sigue siendo 100% gratis, pero su página de descarga lo oculta un poco.
Daniel Little
8
Es gratuito, como dijo Daniel, pero cuando ejecuta el instalador, debe deshabilitar todas las opciones, excepto la "Herramienta de combinación visual". De lo contrario, le pedirá que se conecte a un servidor Perforce. Funciona muy bien con SourceTree.
John
11
Una 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
Intentar descubrir cómo descargar la versión de Windows de p4merge usando su enlace parece una tarea difícil. No hay un enlace de descarga claro que pueda ver.
Artif3x
25

No conozco una buena herramienta gratuita, pero winmerge está bien (ish) . He estado usando las herramientas de comparación más allá desde 1999 y no puedo calificarlo lo suficiente: cuesta alrededor de 50 USD y esta inversión ha pagado por sí misma en ahorros de tiempo más de lo que puedo imaginar.

A veces, las herramientas deben pagarse si son muy, muy buenas.

Sangha Preet
fuente
55
+1 por mencionar opciones pagas.
eckes
1
winmerge es pésimo. La interfaz de usuario hace que sea difícil distinguir la izquierda de la derecha.
Pacerier
1
Usé WinMerge durante años y creo que es genial. Luego cambié a git para el control de versiones y necesitaba una GUI para la comparación de versiones. Primero probé Meld y lo encontré bueno, pero con pocas características. Beyond Compare lo resolvió por mí y estoy muy feliz de pagarlo.
Stephen Hosking
16
  • TortoiseMerge (parte de ToroiseSVN) es mucho mejor que kdiff3 (uso ambos y puedo comparar );
  • p4merge (de Perforce) también funciona muy bien;
  • Difuso no es tan malo;
  • Diffmerge de SourceGear tiene solo una falla en el manejo de archivos UTF8 sin BOM, por lo que es inutilizable para este caso.
Tejón perezoso
fuente
TortoiseGitMerge en realidad es bastante bueno: no sé kdiff3, pero nunca me he sentido infeliz ni me he perdido nada en TortoiseGitMerge, me permite hacer fusiones de dos y tres vías de manera muy rápida e intuitiva.
mindplay.dk
@ mindplay.dk - TortoiseGitMerge es (en su mayoría) un buen TortoiseMerge bajo el capó
Lazy Badger
TortoiseMerge no admite dir-diff
andrew.rockwell
1

Otra opción gratuita es jmeld: http://keeskuip.home.xs4all.nl/jmeld/

Es una herramienta de Java y, por lo tanto, podría usarse en varias plataformas.

Pero (como Preet mencionó en su respuesta), gratis no siempre es la mejor opción. La mejor herramienta de diferencias / fusión que he encontrado es Araxis Merge . La edición estándar está disponible por 99 euros, que no es tanto.

También proporcionan una documentación sobre cómo integrar Araxis con msysGit.

Si desea utilizar una herramienta gratuita, JMeld se acerca bastante a Araxis.

Eckes
fuente
También he escuchado muchas cosas buenas sobre Araxis.
Preet Sangha
-1

¿Qué tiene de malo usar Git para Windows? Desde la vista de repositorio, hay un icono de la rama en la que se encuentra (en la parte superior), y si hace clic en administrar, puede arrastrar y soltar de una manera muy visual y conveniente.

usuario1553825
fuente
77
Creo que la pregunta era sobre resolver conflictos de fusión.
Leif Gruenwoldt