Использование OS X FileMerge/opendiff для просмотра различий git, загрузка всех файлов одновременно в представлении каталога

Мы являемся версией, контролирующей наш проект с помощью git. Разрабатывая под OS X, мы хотели бы использовать приложение FileMerge, поставляемое с инструментами разработки, для отображения сгенерированных git различий:
Если мы правильно поняли, можно настроить его вызов через git difftool,


Следуя советам из разных источников, мы добавили это в наш глобальный файл конфигурации git:

[diff]
    tool = opendiff

Это хорошо работает для различий "файл за файлом". Но мы предпочитаем, чтобы различие в каталогах загружалось сразу в инструменте, для которого команда git difftool --dir-diff,

При вызове команды directory diff, список разных файлов создается правильно, но если мы на самом деле пытаемся открыть один файл, обе стороны показывают, что файлы ошибок не существуют. По-видимому, это связано с тем, что opendiff завершается почти сразу же, поэтому git удаляет временные папки, в которых выполнялось сравнение.

После этого ответа мы добавили эти строки в наш глобальный файл конфигурации git:

[difftool "opendiff"]
    cmd = /usr/bin/opendiff \"$LOCAL\" \"$REMOTE\" -merge \"$MERGED\" | cat

Но это не решает проблему файла, не существуетopendiff по- прежнему возвращает почти сразу).

Какова будет правильная конфигурация для этого варианта использования?

1 ответ

Проблема в том, что Filemerge отфильтровывает .git каталог, в котором git хранит каталог, использованный в выводе --dir-diff,

В Filemerge перейдите в "Настройки"> "Фильтры" и удалите .git от Files to ignore и это должно работать.

Другие вопросы по тегам