2010-10-28 4 views
6

Я читал о байджиллионе Q & A на эту тему и следовали всем инструкциям к письму. Но у меня все еще возникают головные боли, пытающиеся настроить Git на diff и слияние с помощью WinMerge.Git & WinMerge (msysgit)

Я принял следующие шаги, используя терминал Git:

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

Я также создал сценарий в каталог включены в мой PATH переменную, которая читает:

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

Когда Я исполняю

git mergetool 

В терминале Git, я вижу:

Merging: 
first.txt 

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

Так что, мне кажется, что $LOCAL и $REMOTE переменные не пропуская ничего в winmerge.sh сценарий. Что я здесь делаю неправильно? Я должен принять его в части конфигурации.

+0

Я обновил свой ответ с помощью правильных ссылок, а также альтернативу winmerge. – VonC

ответ

7

По сравнению с моим previous answer (или this one или that one), ваши шаги включают в себя дополнительные двойные кавычки в конце winmerge.sh сценария

 
    #!/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) 

, как говорится, ответы на эти вопросы были о difftool использовании winmerge, который не поддерживает 3-way merge (есть только локальный и удаленный, нет базы).

Для истинного инструмента слияния, я бы рекомендовал kdiff3 (как в «Is it possible for git-merge to ignore line-ending differences?») или araxis (как описано в "How to set Araxis as diff/merge tool for MSYS git?"), где вы можете увидеть три переменные (локальный, удаленный и базы) б/у.

+0

Не могли бы вы исправить свою ссылку? – erjiang

+0

@erjiang: ссылки фиксированы и добавлены важные комментарии о трехсторонних инструментах слияния. – VonC