Я пытаюсь сравнить двоичный файл с помощью «git difftool». Этот файл тоже постановочный, но, похоже, это не важно. Итак, я использую что-то вроде ниже:
git difftool --staged /path/to/file
и мой .gitconfig настроен так:
[difftool "bc3"]
path = C:/Program Files (x86)/Beyond Compare 3/BComp.com
cmd = BComp.com \"$LOCAL\" \"$REMOTE\" -lefttitle="Remote" -righttitle="$BASE" -lro
[diff]
tool = bc3
[difftool]
prompt = false
Поэтому, когда я запускаю git difftool
, он открывает Beyond Compare, как и ожидалось, но я получаю сообщение об ошибке, что базовый двоичный файл не существует. Измененная локальная копия корректно загружается в инструмент.
Я заметил это с *.bcpkg (файл настроек Beyond Compare, в основном zip-файл), а также с обычными файлами *.zip. Но, кажется, отлично работает с файлами *.exe. Я заметил, что git difftool
не должен возвращаться, если Beyond Compare не закрыт, потому что, если он возвращает созданный им временный файл, он удаляется. Но в случае zip-файла он всегда возвращается немедленно.
Кстати, diff для всех других типов файлов у меня работает нормально. У меня Windows 7 (64-разрядная версия) и, как вы видите, я настроил Beyond Compare 3.