He logrado que git inicie Beyond Compare 3 como una herramienta de diferenciación, sin embargo, cuando hago una diferencia, el archivo con el que estoy comparando no se está cargando. Solo se carga la última versión del archivo y nada más, por lo que no hay nada en el panel derecho de Beyond Compare.
Estoy ejecutando git 1.6.3.1 con Cygwin con Beyond Compare 3. He configurado más allá de cualquier comparación como sugieren en la parte de soporte de su sitio web con un script como este:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"path_to_bc3_executable" "$2" "$5" | cat
¿Alguien más ha encontrado este problema y conoce una solución para esto?
Editar:
He seguido las sugerencias de VonC pero sigo teniendo exactamente el mismo problema que antes. Soy un poco nuevo en Git, así que tal vez no esté usando el diff correctamente.
Por ejemplo, estoy tratando de ver la diferencia en un archivo con un comando como este:
git diff main.css
Beyond Compare se abrirá y solo mostrará mi main.css actual en el panel izquierdo, no hay nada en el panel derecho. Me gustaría ver mi main.css actual en el panel izquierdo en comparación con HEAD, básicamente lo que hice por última vez.
Mi git-diff-wrapper.sh se ve así:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"c:/Program Files/Beyond Compare 3/BCompare.exe" "$2" "$5" | cat
Mi configuración de git se ve así para Diff:
[diff]
external = c:/cygwin/bin/git-diff-wrapper.sh
/c/program files
lugar dec:/program files
. También quité el"$(cygpath -w $LOCAL)"
y acabo de usar"$LOCAL"
. Eso pareció funcionar.