2010-10-28 11 views
6

Ho letto di un bajillion Q & A su questo argomento e ho seguito tutte le istruzioni per la lettera. Ma sto ancora avendo mal di testa cercando di impostare Git per diff e unire utilizzando WinMerge.Git & WinMerge (msysgit)

Mi sono preso la seguente procedura utilizzando il terminale di Git:

git config --global diff.tool winmerge 
git config --global difftool.winmerge.cmd "winmerge.sh \"$LOCAL\" \"$REMOTE\"" 
git config --global difftool.prompt false 

Ho anche creato uno script in una directory inclusa nel mio variabile PATH che recita:

#!/bin/sh 
echo Launching WinMergeU.exe: $1 $2 
"C:/Program Files/WinMerge/WinMergeU.exe" git /e /u /dl "Base" /dr "Mine" "$1" "$2"" 

Quando eseguo

git mergetool 

Nel terminale Git, vedo:

Merging: 
first.txt 

Normal merge conflict for 'first.txt': 
    {local}: modified 
    {remote}: modified 
Launching WinMergeU.exe: 

Quindi mi sembra che le variabili $LOCAL e $REMOTE non passano nulla nello script winmerge.sh. Cosa sto facendo di sbagliato qui? Devo supporre che sia nella parte di configurazione.

+0

Ho aggiornato la mia risposta con i collegamenti corretti e qualche alternativa a Winmerge. – VonC

risposta

7

rispetto al mio previous answer (o this one, o that one), i tuoi passi includono una doppia citazione extra alla fine del winmerge.sh sceneggiatura

 
    #!/bin/sh 
    echo Launching WinMergeU.exe: $1 $2 
    "C:/Program Files/WinMerge/WinMergeU.exe" 
     git /e /u /dl "Base" /dr "Mine" "$1" "$2"" 
              ^
               | 
            (this shouldn't be here) 

Detto questo, le risposte erano circa difftool utilizzando winmerge, che non supporta 3-way merge (c'è solo locale e remoto, nessuna base).

Per un vero strumento di unione, mi sento di raccomandare kdiff3 (come in "Is it possible for git-merge to ignore line-ending differences?") o araxis (come descritto in "How to set Araxis as diff/merge tool for MSYS git?"), dove si possono vedere i tre variabili (locali, remote e base) utilizzato.

+0

Puoi correggere il tuo link? – erjiang

+0

@erjiang: collegamenti corretti e commenti importanti sugli strumenti di unione a tre vie aggiunti. – VonC

Problemi correlati