Git Difftool Meld не работает в Babun

В настоящее время я настраиваю difftool Meld для работы в Babun, используя следующие команды:

git config --global diff.tool meld
git config --global difftool.prompt false
git config --global difftool.meld.path "/cygdrive/c/Program\ Files\ \(x86\)/Meld/Meld.exe"
git config --global difftool.meld.cmd '/cygdrive/c/Program\ Files\ \(x86\)/Meld/Meld.exe $LOCAL $REMOTE'

Это работает, и Meld открывается с двумя файлами, когда я запускаю

git difftool HEAD HEAD^

Тем не менее, второй файл (с пульта) не открывается, и я получаю

There was a problem opening the file "\tmp\xxx_FILENAME.EXTENSION"

Однако, когда я запускаю difftool из git bash, это работает. Что-то не так в моей настройке?

1 ответ

Решение

Проблема была в доступе к временным файлам Cygwin. Потому что Cygwin имеет свои собственные диски, которые мне нужно было использовать cygpath отформатировать пути к файлам. Полная настройка ниже:

git config --global diff.tool meld
git config --global difftool.prompt false
git config --global difftool.meld.path "c:\Program Files (x86)\Meld\Meld.exe"
git config --global difftool.meld.cmd 'c:/Program\ Files\ \(x86\)/Meld/Meld.exe "$(cygpath -w "$LOCAL")" "$(cygpath -w "$REMOTE")"'
Другие вопросы по тегам