Приложение B. Автоматизация TortoiseMerge

Содержание

Параметры командной строки TortoiseMerge

TortoiseMerge можно запустить с параметрами командной строки, и тогда не надо будет указывать файлы в диалоге Открыть. Это также может пригодиться, если вам надо вызвать TortoiseMerge из другого приложения.

Параметры командной строки TortoiseMerge

Большинство параметров требуют дополнительной информации, вроде пути или какой-то другой строки. В этом случае, добавьте к параметру ':' и после этого укажите строку/путь. Пример:

/base:"c:\folder\my base file.txt"
      

Таблица B.1. Список доступных параметров командной строки

КомандаОписание
/?Показывает диалоговое окно с наиболее важными параметрами командной строки.
/helpТо же самое, что и ?.
/baseЗадаёт базовый файл, используемый в трёхстороннем сравнении. Это общий предок сравниваемых файлов, хотя он и не показывается в отдельном окне. При двухстороннем сравнении это левый файл.
/basenameИмя 'базового' файла, которое показывается в заголовке панели вместо пути к файлу. При трёхстороннем сравнении оно показывается во всплывающей подсказке заголовка панели.
/basereflectednameИмя используемое в шаблонах editorconfig.
/theirsЗадаёт их файл, используемый в трёхстороннем сравнении; показывается в левой панели.
/theirsnameИмя 'их' файла, которое показывается в заголовке панели вместо пути к файлу.
/theirsreflectednameИмя используемое в шаблонах editorconfig.
/mineЗадаёт мой файл, используемый в трёхстороннем сравнении; показывается в правой панели. При двухстороннем сравнении это правый файл.
/minenameИмя 'моего' файла, которое показывается в заголовке панели вместо пути к файлу.
/minereflectednameИмя используемое в шаблонах editorconfig.
/merged

Определяет результирующий объединённый файл используемый в различиях. Это путь файла, в котором сохраняются результаты слияния или разрешения конфликтов.

Если это не задано для трёхстороннего сравнения, то TortoiseMerge спросит у пользователя куда сохранить результат.

Если это не задано для двухстороннего сравнения, то TortoiseMerge автоматически использует путь файла, отображаемого в правой панели, как путь сохранения.

/mergednameИмя 'слитого' файла, которое показывается в заголовке панели вместо пути к файлу.
/mergedreflectednameИмя используемое в шаблонах editorconfig.
/patchpathПуть, к которому необходимо применить заплатку. Если путь не указан, TortoiseMerge попытается найти этот путь самостоятельно по соответствию путям в заплатке, но это может занять очень продолжительное время.
/saverequiredЕсли задано, то TortoiseMerge выдаст запрос на сохранение перед выходом даже если пользователь не изменял файлы.
/saverequiredonconflictsЕсли задано, то TortoiseMerge выдаст запрос на сохранение перед выходом если найдены конфликты, даже если пользователь не изменял файлы.
/patchoriginalИмя исходного файла для применения заплатки. Используется в заголовке панели.
/patchpatchedИмя результирующего файла с применённой заплаткой. Используется в заголовке панели.
/diffПуть к файлу заплатки/различий, который будет применяться к папке.
/onewayЗаставляет TortoiseMerge запускаться в однопанельном режиме вместо режима, указанного пользователем в настройках.
/reversedpatchМеняет местами левую и правую панели с указанными для сравнения двумя файлами.
/createunifieddiffСоздаёт файл объединённых различий (файл заплатки) для двух файлов, указанных /origfile:"путь_к_исходному_файлу" и /modifiedfile:"путь_к_изменённому_файлу". Путь к создаваемому файлу указывается в /outfile:"путь_к_создаваемому_файлу_заплатки". Если параметр /outfile не задан, то будет показан диалог сохранения файла, чтобы пользователь мог выбрать, куда сохранить файл заплатки. Обратите внимание: если указан параметр /createunifieddiff, то все остальные параметры игнорируются.
/lineЗадаёт номер строки, к которой будет осуществлён переход после загрузки файлов.
/readonlyПредотвращает файл от редактирования. Это означает, что возможности редактирования TortoiseMerge отключены.
/nosvnresolvePrevents TortoiseMerge from asking whether to mark a file as resolved in SVN after saving it.


Можно также указать в командной строке просто имена файлов для совместимости с другими программами сравнения. Формат командной строки для этой упрощённой формы выглядит следующим образом:

TortoiseMerge BaseFilePath MyFilePath [ TheirFilePath ]
      

Если указаны два файла, они сравниваются друг с другом. Если указано три файла, то первый используется как базовый, а остальные два сравниваются с ним трёхсторонним сравнением.