Sono riuscito a far sì che git avvii Beyond Compare 3 come strumento diff, tuttavia, quando eseguo un diff, il file con cui sto confrontando non viene caricato. Viene caricata solo l'ultima versione del file e nient'altro, quindi non c'è nulla nel riquadro destro di Beyond Compare.
Sto eseguendo git 1.6.3.1 con Cygwin con Beyond Compare 3. Ho impostato oltre il confronto come suggeriscono nella parte di supporto del loro sito Web con uno script come questo:
#!/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
Qualcun altro ha riscontrato questo problema e conosce una soluzione?
Modifica:
ho seguito i suggerimenti di VonC ma ho ancora esattamente lo stesso problema di prima. Sono un po 'nuovo su Git quindi forse non sto usando correttamente il diff.
Ad esempio, sto cercando di vedere il diff su un file con un comando come questo:
git diff main.css
Beyond Compare si aprirà e visualizzerà solo il mio main.css corrente nel riquadro di sinistra, non c'è nulla nel riquadro di destra. Vorrei vedere il mio main.css corrente nel riquadro di sinistra rispetto a HEAD, in pratica quello che ho commesso per ultimo.
Il mio git-diff-wrapper.sh ha questo aspetto:
#!/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
La mia configurazione git è simile a questa per Diff:
[diff]
external = c:/cygwin/bin/git-diff-wrapper.sh
/c/program files
invece dic:/program files
. Inoltre ho rimosso"$(cygpath -w $LOCAL)"
e appena usato"$LOCAL"
. Quello sembrava fare il trucco.