Заставьте svn автоматически определять diff-cmd и diff3-cmd в зависимости от расширения файла - PullRequest
4 голосов
/ 21 сентября 2011

В Git их можно указать в .gitattributes и выполнить некоторые дополнительные настройки:

git config diff.difftool.command ...
git config merge.mergetool.driver ...

В Mercurial можно указывать шаблоны в файле hgrc (секции [diff-patterns] и [merge-patterns])).

Как этого добиться в Subversion?

1 Ответ

2 голосов
/ 21 сентября 2011

Красная книга для Subversion (обычно источник всех знаний) здесь не слишком конкретна.В нем указано, что есть возможность настроить diff-cmd и diff3-cmd и что можно добавить добавочные номера к вызову.

Однако в нем говорится следующее:

Решение о том, когда запускать контекстный двух- или трехсторонний дифференциал как часть более крупной операции Subversion, принимается исключительно Subversion и зависит, среди прочего, от того, являются ли файлы, с которыми вы работаете, удобочитаемыми, как это определеноих свойство svn: mime-типа.Это означает, например, что даже если у вас был самый изящный инструмент различий или слияния Microsoft Word в юниверсе, он никогда не будет вызываться Subversion, если в ваших документах Word с версией настроен тип MIME, который означает, что они не быличитаемый человеком (такой как application / msword).

В нем не сказано, как повлиять на это решение: - (

Если вы используете инструмент TortoiseSVN, существуют опции конфигурации, включающие указание используемого инструмента сравнения для каждого типа mime.рассматриваемого файла. Путь к этой конфигурации: TortoiseSVN > Settings > External Programs > Diff Viewer > Advanced.... Возможно, это вариант для вас.


Мое личное мнение заключается в том, что команда Subversion считает, что вы должны использовать оболочкув любом случае, как diff-tool, и решать, какой инструмент использовать, с какой конкретной конфигурацией на основе mime-типа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...