Настройки TortoiseSVN

Чтобы узнать, для чего предназначены различные параметры, просто оставьте ненадолго указатель мыши на поле ввода/флажке... и появится полезная подсказка.

Общие настройки

Рисунок 4.68. Страница 'Общее' в диалоге настроек

Страница 'Общее' в диалоге настроек


В этом диалоге можно указать предпочитаемый вами язык интерфейса, а также некоторые специальные настройки Subversion.

Язык

Выбирает язык пользовательского интерфейса. Конечно, вы должны сначала установить соответствующий языковой пакет, чтобы получить в интерфейсе язык отличный от английского.

Проверить наличие обновлений

TortoiseSVN будет периодически соединяться с сайтом и проверять доступна ли новая версия программы. Если доступна, то будет показана уведомляющая ссылка в диалоге фиксации. Используйте кнопку Проверить чтобы получить ответ прямо сейчас. Новая версия не будет загружена, вы просто получите информационный диалог, сообщающий что доступна новая версия.

Системные звуки

TortoiseSVN по умолчанию устанавливает в систему три собственных звука.

  • Ошибка

  • Уведомление

  • Предупреждение

Вы можете выбрать другие звуки (или вообще их отключить) при помощи панели управления Windows. Кнопка Настроить служит для её быстрого вызова.

Использовать Aero диалоги

В ОС Windows Vista и более поздних системах управляет стилем Aero для диалоговых окон.

Создать библиотеку

В ОС Windows 7 вы можете создать Библиотеку, в которой сгруппировать рабочие копии, которые разбросаны в различных местах системы.

Шаблоны игнорирования

Общие шаблоны игнорирования используются для предотвращения отображения неверсированных файлов, например, в диалоге фиксации. Файлы, соответствующие шаблонам, игнорируются также при импорте. Игнорирование файлов или папок осуществляется путём ввода имён или расширений. Шаблоны разделяются пробелами, например bin obj *.bak *.~?? *.jar *.[Tt]mp. Эти шаблоны не должны включать разделители путей. Заметьте также, что нет способа провести различие файлов и папок. Прочтите «Сопоставление шаблону в списках игнорирования» для дополнительной информации о синтаксисе задания шаблонов.

Обратите внимание: шаблоны игнорирования, задаваемые здесь, влияют также на других клиентов Subversion, работающих на вашем ПК, включая клиента командной строки.

Внимание

Если вы воспользуетесь файлом настроек Subversion для установки шаблона global-ignores, то его значение переопределит сделанные здесь установки. Доступ к файлу настроек Subversion можно получить посредством кнопки Правка, описанной ниже.

Этот шаблон игнорирования повлияет на все ваши проекты. Он не версируется, поэтому не затронет других пользователей. Для сравнения, вы также можете использовать версированное свойство svn:ignore или svn:global-ignores для исключения файлов или папок из-под управления версиями. Для более подробной информации прочтите «Игнорирование файлов и папок».

Устанавливать даты файлов на «время последнего фиксирования»

Эта опция предписывает TortoiseSVN устанавливать дату файлов по времени последней фиксации при выполнении извлечения или обновления. Иначе TortoiseSVN будет использовать текущую дату. Если вы разрабатываете программное обеспечение, в общем случае лучше использовать текущую дату, поскольку системы сборки обычно смотрят на метку времени для принятия решения о том, какие файлы нуждаются в компиляции. Если вы используете «время последнего фиксирования» и откатываетесь к старой ревизии файла, ваш проект вопреки ожиданиям может больше не компилироваться.

Файл настроек Subversion

Воспользуйтесь кнопкой Правка для непосредственного редактирования файла настроек. Некоторые настройки не могут быть изменены TortoiseSVN напрямую, и вместо этого должны быть заданы здесь. Для более подробной информации о файле config Subversion смотрите Область настроек времени выполнения (Runtime Configuration Area). Раздел Автоматическая установка свойств (Automatic Property Setting) особенно интересен, и он настраивается именно здесь. Заметьте, что Subversion может считывать информацию о настройках из нескольких мест, и вам необходимо знать, которое из них имеет приоритет. Прочтите Конфигурация и реестр Windows (Configuration and the Windows Registry), чтобы узнать больше.

Применить локальные изменения в svn:externals при обновлении

Эта настройка говорит TortoiseSVN всегда применять локальные изменения к свойству svn:externals при обновлении рабочей копии.

Настройки контекстного меню

Рисунок 4.69. Страница контекстного меню в диалоге настроек

Страница контекстного меню в диалоге настроек


Эта страница позволяет вам указать, какие пункты контекстного меню TortoiseSVN будут отображаться в основном контекстном меню, а какие - в подменю. По умолчанию, большинство пунктов не отмечены и отображаются в подменю.

Но есть особый случай: пункт меню Заблокировать. Конечно, вы можете переместить его в меню верхнего уровня при помощи вышеуказанного списка, но поскольку большинство файлов блокировать не надо, это только создаст дополнительную помеху. Однако, для файла с установленным свойством svn:needs-lock, это действие необходимо производить при каждом редактировании, поэтому в этом случае очень полезно, чтобы соответствующий пункт меню был доступен сразу. Отметка на флажке означает, что когда выбран файл с установленным свойством svn:needs-lock, пункт Заблокировать всегда будет появляться в меню верхнего уровня.

Большую часть времени вам не понадобится контекстное меню TortoiseSVN, в отличии от папок, которые находятся по управлением Subversion. Для неверсированных папок контекстное меню нужно вам если вы хотите извлечь рабочую копию. Если вы включите настройку Скрыть меню для неверсированных путей , то TortoiseSVN не будет добавлять пункты в контекстное меню для неверсированных папок. Но пункты добавляются для всех элементов и путей в версированной папке. И вы можете вернуть пункты для неверсированных папок нажав и удерживая клавишу Shift при показе контекстного меню.

Если вы желаете, чтобы контекстное меню TortoiseSVN по некоторым путям в вашем компьютере не показывалось вообще, вы можете указать такие пути в поле снизу.

Настройки диалогов TortoiseSVN - 1

Рисунок 4.70. Страница 'Диалоги 1' в диалоге настроек

Страница 'Диалоги 1' в диалоге настроек


Эта страница позволяет настроить некоторые диалоги TortoiseSVN под ваши предпочтения.

Количество сообщений журнала по умолчанию

Ограничивает число сообщений журнала, которые TortoiseSVN извлекает при первом вызове TortoiseSVNЖурнал Эта опция полезна при медленных соединениях с серверами[5]. Вы всегда можете использовать Показать все или Следующие 100 для получения остальных сообщений.

Шрифт сообщений журнала

Выбирает начертание и размер шрифта, используемого для отображения самого сообщения журнала в средней панели окна журнала ревизий, а также при составлении сообщений в диалоге фиксации.

Короткий формат даты/времени в сообщениях журнала

Если стандартные длинные сообщения занимают слишком много места на экране, можно использовать короткий формат.

Включить сравнение ревизии в списке с предыдущей по двойному щелчку

Если вы обнаружили, что часто сравниваете ревизии в верхней панели диалога журнала, то можете использовать эту настройку для разрешения этого действия по двойному щелчку. По умолчанию она не включена, т. к. получение различий часто долгий процесс и многие люди предпочитают избегать ожидания при случайном двойном щелчке. Вот поэтому по умолчанию настройка отключена.

Авто-закрытие

TortoiseSVN может автоматически закрывать все окна, отображающие процесс выполнения, при условии успешного завершения действия. Эта настройка позволяет вам выбрать условия для закрытия этих окон. Значение по умолчанию (рекомендуемое) - Закрывать вручную, которое позволяет вам просмотреть все сообщения и проверить, что произошло. Однако, вы можете принять решение о игнорировании некоторых типов сообщений, так чтобы диалог закрывался автоматически в случае отсутствия критических изменений.

Автозакрытие: не было слияний, добавлений или удалений означает, что окно выполнения будет закрыто, если были только простые обновления, но, если производилось слияние изменений из хранилища с вашими, или если какие-либо файлы были добавлены или удалены, окно останется открытым. Оно также останется открытым, если возникли конфликты или ошибки во время выполнения этого действия.

Автозакрытие при отсутствии конфликтов ещё больше смягчает условия и будет закрывать окно даже в случае наличия слияний, добавлений или удалений. Однако, если возникли какие-нибудь конфликты или ошибки, окно останется открытым.

Автозакрытие при отсутствии ошибок всегда закрывает окно, даже если были конфликты. Окно остаётся открытым только в случае ошибок, которые не позволили Subversion выполнить задачу. Например, обновление не удалось из-за недоступности сервера, или фиксация не удалась из-за устаревания рабочей копии.

Всегда закрывать диалоговые окна для локальных операций

Локальные операции, такие как добавление файлов или отмена изменений, не требуют соединения с хранилищем и выполняются быстро, так что диалог процеса выполнения малоинтересен. Выберите эту настройку если вы хотите, чтобы диалог процеса выполнения закрывался автоматически, кроме случаев возникновения ошибок.

Использовать корзину при отмене изменений

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

Задать изначально URL рабочей копии в поле «Из:»

В диалоге слияния поведением по умолчанию является сохранение URL в поле Из: между слияниями. Однако, некоторые люди предпочитают выполнять слияния из нескольких различных точек в иерархии, и считают более простым начинать с URL текущей рабочей копии, который затем может быть отредактирован для указания на параллельный путь в другом ответвлении.

Путь по умолчанию

Вы можете задать путь по умолчанию для извлечения. Если вы располагаете все ваши извлечения в одном месте, бывает полезно, когда в этом поле предварительно указан соответствующий путь, чтобы вам оставалось только дописать в конце имя новой папки.

URL по умолчанию

Вы также можете указать и адрес URL по умолчанию для извлечения. Если вы часто извлекаете подпроекты какого-нибудь большого проекта, может оказаться полезным предварительное заполнение поля URL, чтобы достаточно было добавить только имя подпроекта в конце.

Настройки диалогов TortoiseSVN - 2

Рисунок 4.71. Страница 'Диалоги 2' в диалоге настроек

Страница 'Диалоги 2' в диалоге настроек


Показать файлы из неверсированных папок

Если этот флажок отмечен (состояние по умолчанию), то при отображении статуса для неверсированной папки в диалогах Добавление, Фиксация или Проверка на наличие изменений показываются также все её дочерние файлы и папки. Если снять пометку, будет показана только неверсированная папка, что снижает избыточность списка файлов в этих диалогах. В этом случае при выборе неверсированной папки для добавления она добавляется рекурсивно.

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

Использовать автозавершение для путей файлов и ключевых слов

Диалог фиксации содержит механизм анализа списка имён фиксируемых файлов. При вводе первых 3 символов какого-либо элемента из списка, появляется окно автозавершения с полным вариантом написания, и вы можете нажать клавишу ввода для завершения имени файла. Отметьте флажок для включения этой функции.

Таймаут для остановки разбора автозавершения (сек)

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

Проверять орфографию, только если tsvn:projectlanguage установлено

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

Количество сохраняемых предыдущих сообщений журнала

Когда вы набираете сообщение журнала в диалоге фиксации, TortoiseSVN сохраняет его для возможного повторного использования в последующем. По умолчанию, сохраняются последние 25 сообщений журнала для каждого хранилища. Вы можете изменить это число: если у вас много различных хранилищ, вы можете уменьшить его для сокращения количества записей в вашем реестре.

Обратите внимание: эта настройка применяется только к сообщениям, вводимым на этом компьютере. Это не имеет никакого отношения к кэшированию сообщений журнала.

Автоматический выбор элементов

При обычном поведении в диалоге фиксации все изменённые (версированные) элементы отмечаются для фиксации автоматически. Если вы предпочитаете начинать из состояния, когда ничего не отмечено, и выбирать необходимые элементы для фиксации вручную, снимите пометку с этого флажка.

Открыть диалог после фиксации если есть незафиксированные элементы

Это автоматически повторно откроет диалог фиксации в той же директории после успешной фиксации. Диалог открывается только если остались ещё элементы для фиксации.

Связываться с хранилищем при начале работы

Диалог 'Проверка на наличие изменений' по умолчанию проверяет рабочую копию, и соединяется с хранилищем, только если вы нажмёте Проверить хранилище. Если вы желаете всегда проверять хранилище, вы можете использовать эту установку для выполнения этого действия автоматически.

Показывать диалог блокировки перед блокированием файлов

При выборе одного или более файлов и последующем применении TortoiseSVNЗаблокировать для блокировки этих файлов, в некоторых проектах обычно предлагается написать сообщение с объяснением, для чего вы блокируете файлы. Если вы не используете сообщения блокировки, вы можете снять отметку с этого флажка, и тогда этот диалог будет пропущен и файлы будут блокироваться сразу.

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

Если ваш проект использует свойство tsvn:lockmsgminsize, диалог блокировки будет показан независимо от этой настройки, так как сообщения блокировки являются обязательными в этом проекте.

Настройки диалогов TortoiseSVN - 3

Рисунок 4.72. Страница 'Диалоги 3' в диалоге настроек

Страница 'Диалоги 3' в диалоге настроек


Предварительно выбирать папки для быстрого просмотра

Если этот флажок установлен (значение по умолчанию), то обозреватель хранилища получает информацию о показанных папках в фоновом режиме. Таким образом, как только вы просматриваете одну из этих папок, то информация уже доступна.

Однако некоторые серверы не могут обрабатывать множество запросов по этой причине, или же при неправильных настройках такое количество запросов воспринимается как что-то неправильное и начинает их блокировать. В этом случае вы можете отключить предварительную выборку.

Показать внешние

Если этот флажок установлен (значение по умолчанию), то обозреватель хранилища показывает файлы и папки, которые включены с помощью свойства svn:externals, как обычные файлы и папки, но с оверлейным значком для обозначения того, что они из внешнего источника.

Возможность предварительной выборки, описанная выше, может создать слишком большую нагрузку на слабые серверы. В этом случае вы можете здесь отключить эту возможность.

Настройки цветов в TortoiseSVN

Рисунок 4.73. Страница 'Цвета' в диалоге настроек

Страница 'Цвета' в диалоге настроек


Этот диалог позволяет настроить цвета текстов, используемых в диалогах TortoiseSVN, как вам больше нравится.

Конфликтующий / мешающий

Конфликт, возникший во время обновления, или который может возникнуть при слиянии. Обновление, которому мешает существующий неверсированный файл/папка с тем же именем, что и версированный.

Этот цвет также используется для сообщений об ошибках в окне выполнения.

Добавленные файлы

Элементы, добавленные в хранилище.

Отсутствует / удалён / замещён

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

Слит

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

Изменён / скопирован

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

Удалённый узел

Элемент, который был удалён из хранилища.

Добавленный узел

Элемент, который был добавлен в хранилище посредством операции добавления, копирования или перемещения.

Переименованный узел

Элемент, который был переименован в хранилище.

Замещённый узел

Элемент, который был замещён новым элементом с таким же именем после удаления исходного.

Соответствие фильтру

При использовании фильтра в диалоге журнала искомые условия подсвечены этим цветом в результате.

Настройки графа ревизий

Рисунок 4.74. Страница 'Граф ревизий' в диалоге настроек

Страница 'Граф ревизий' в диалоге настроек


Шаблоны классификации

Граф ревизий пытается показать более ясную картину структуры вашего хранилища, выделяя ствол, ответвления и метки. Поскольку такой встроенной классификации в Subversion нет, эта информация извлекается из путей. Настройки по умолчанию предполагают, что вы используете традиционные наименования на английском, предложенные в документации Subversion, но, конечно же, вы можете использовать и что-нибудь другое.

Укажите шаблоны, используемые для выделения путей, в соответствующих полях ввода. Шаблоны распознаются независимо от регистра, но вы должны ввести их в нижнем регистре. Подстановочные символы * и ? работают как обычно, и вы можете использовать ; для разделения нескольких шаблонов. Не вводите дополнительные пробельные символы, поскольку они также будут включены в шаблон при сопоставлении.

Определение фиксации метки

Пожалуйста, обратите внимание, что эти шаблоны также используются для определения фиксаций в метку, а не только для графа ревизий.

Изменение цвета

Цвета используются в графе ревизий для обозначения типа узла, т.е. был ли узел добавлен, удалён, переименован. Для того, чтобы помочь в классификации узлов, вы можете разрешить в графе ревизий смешивать цвета, что даст информацию сразу и о типе узла, и о его классификации. Смешивание используется, если флажок отмечен. Если флажок не отмечен, цвет используется только для обозначения только типа узла. Воспользуйтесь диалогом выбора цветов для того, чтобы задействовать определённые цвета.

Цвета в графе ревизий

Рисунок 4.75. Страница 'Цвета' графа ревизий в диалоге настроек

Страница 'Цвета' графа ревизий в диалоге настроек


Эта страница позволяет настроить используемые цвета. Учтите, что здесь указывается чистый цвет. Большинство узлов раскрашиваются смесью цвета типа узла, цвета фона и, при выборе, цветом классификации.

Удалённый узел

Элементы, которые были удалены и не были скопированы куда-либо ещё в той же ревизии.

Добавленный узел

Вновь добавленные элементы, или скопированные (добавленные с историей).

Переименованный узел

Элементы, удалённые в одном месте и добавленные в другом в той же ревизии.

Изменённый узел

Простые изменения без добавлений или удалений.

Неизменённый узел

Может быть использован для отображения ревизии, использованной как источник копирования, даже если в этой ревизии изменений не было (у элемента, показываемом в графе).

Ведущий узел

Текущая ведущая ревизия в хранилище (HEAD).

Узел рабочей копии

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

Рамка узла рабочей копии

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

Узлы меток

К узлам, классифицированным как метки, может быть примешан этот цвет.

Узлы ствола

К узлам, классифицированным как ствол, может быть примешан этот цвет.

Обозначение свёрнутых меток

Если вы используете сворачивание меток для экономии пространства, метки в источнике копирования обозначаются при помощи прямоугольника этого цвета.

Обозначение выбранного узла

При выделении узла щелчком левой кнопки, выбор обозначается прямоугольником этого цвета.

Полосы

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

Настройки пометок на значках

Рисунок 4.76. Страница 'Пометки на значках' в диалоге настроек

Страница 'Пометки на значках' в диалоге настроек


Эта страница позволяет выбрать элементы, для которых TortoiseSVN будет показывать пометки на значках.

Поскольку получение информации о статусе рабочей копии занимает некоторое время, TortoiseSVN использует кэширование для сохранения статуса, чтобы Проводник не слишком 'задумывался' при отображении пометок. Здесь вы можете выбрать, какой тип кэша TortoiseSVN должен использовать, исходя из возможностей вашей системы и размеров рабочих копий:

По умолчанию

Кэширует всю информацию о статусе в отдельном процессе (TSVNCache.exe). Этот процесс наблюдает за изменениями на всех дисках и заново получает статус при изменении файлов внутри рабочей копии. Процесс запускается с наименьшим возможным приоритетом, чтобы не мешать другим программам. Это также означает, что информация о статусе обновляется не в реальном времени, и может потребоваться несколько секунд, прежде чем пометки изменятся.

Преимущества: пометки отображают статус рекурсивно, т.е. если был изменён файл, расположенный глубоко в рабочей копии, то все папки выше по иерархии, вплоть до корня рабочей копии, также будут помечены как изменённые. И поскольку процесс может посылать уведомления оболочке, также обычно изменяются и пометки в дереве левой панели Проводника.

Недостатки: процесс работает постоянно, даже если вы не работаете над своими проектами. Он также использует примерно 10-50 Мб ОЗУ, в зависимости от количества и размера ваших рабочих копий.

В оболочке

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

Преимущества: необходимо совсем немного памяти (около 1Мб ОЗУ) и можно отображать статус в реальном времени.

Недостатки: поскольку кэшируется только одна папка, пометки не отображают статус рекурсивно. Для больших рабочих копий может потребоваться больше времени для отображения папки в Проводнике, нежели с кэшированием по умолчанию. Также в этом случае становиться недоступным столбец mime-типа.

Без кэширования

При этой установке TortoiseSVN вообще не получает статус в Проводнике. Из-за этого пометки на файлах не отображаются, а на папках показываются пометки 'нормальный', только если они версированные. Никакие другие пометки не отображаются, и также недоступны все дополнительные столбцы.

Преимущества: совершенно не требует дополнительной памяти и вообще не замедляет Проводник во время просмотра.

Недостатки: информация о статусе файлов и папок в Проводнике не отображается. Чтобы увидеть, была ли изменена ваша рабочая копия, вы должны использовать диалог «Проверка на наличие изменений».

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

Вы также сделать так, чтобы папки помечались как изменённые, если в них есть неверсированные элементы. Это может пригодиться для напоминания вам о свежесозданных, пока ещё неверсированных, файлах. Эта опция доступна только при использовании варианта кэширования статуса по умолчанию (см.ниже).

Если у вас есть файлы в списке изменений ignore-on-commit, вы можете сделать так, чтобы эти файлы не распространяли свой статус на родительскую папку. Таким образом, если изменены только файлы в этом списке изменений, родительская папка всё же показывается с неизменённой оверлейной иконкой.

Следующая группа позволяет выбрать, для каких классов накопителей будут отображаться пометки на значках. По умолчанию, выбраны только жёсткие диски. Вы можете даже полностью отключить показ пометок, но что это вам даст?

Сетевые диски могут быть очень медленными, поэтому по умолчанию пометки не показываются в рабочих копиях, расположенных на сетевых разделяемых ресурсах.

USB флэш-накопители, похоже, являются особым случаем, поскольку тип диска определяется самим устройством. Некоторые показываются как жёсткие диски, а некоторые - как сменные носители.

Исключить пути используется чтобы сообщить TortoiseSVN пути, для которых не надо отображать оверлейные значки и колонки статуса. Это полезно в случае когда у вас очень большие рабочие копии, содержащие только библиотеки, которые вы вообще не будете изменять и поэтому вам не нужны оверлеи, или же TortoiseSVN должен смотреть только в определенных папках.

Любой указанный здесь путь будет использоваться рекурсивно, так что ни в одной из дочерних папок не будут показаны оверлеи. Если вы хотите исключить только названную папку, то добавьте ? после пути.

То же самое относится к Включить пути, за исключением того, что для этих путей пометки показываются, даже если пометки были отключены или для этого конкретного типа диска, или при помощи указанного выше исключения путей.

Пользователи иногда спрашивают, как эти три настройки взаимодействуют. Для любого заданного пути проверяются списки включения и исключения, ищутся совпадения вверх по иерархии директорий. Когда найдено первое совпадение проверяется соответствие правилу включения или исключения. Если есть конфликт, то определение одиночной директории имеет приоритет над рекурсивным определением, затем включение имеет приоритет над исключением.

Здесь вам поможет пример:

Исключить:
C:
C:\develop\?
C:\develop\tsvn\obj
C:\develop\tsvn\bin

Включить:
C:\develop
    

Эти настройки отключают оверлейные значки для диска C:, кроме c:\develop. Все проекты ниже этой директории будут отображать оверлейные значки, исключая саму папку c:\develop,

TSVNCache.exe также использует эти пути для того, чтобы ограничить объём сканирования. Если вы желаете просматривать только определённые папки, запретите все типы дисков и включите только те папки, которые должны сканироваться особо.

Исключение дисков, созданных при помощи SUBST

Довольно часто удобно использовать созданный при помощи SUBST диск для доступа к вашим рабочим копиям, например, применяя команду

subst T: C:\TortoiseSVN\trunk\doc
      

Однако, это может привести к тому, что пометки не будут обновляться, поскольку TSVNCache будет получать одно оповещение при изменении файла, и обычно это исходный путь. Это означает, что пометки по subst-пути могут никогда не обновиться.

Простой способ обойти эту проблему - исключить отображение пометок по исходному пути, чтобы вместо этого пометки показывались по subst-пути.

Иногда, производя исключение областей, содержащих рабочие копии, что избавляет TSVNCache от сканирования и мониторинга изменений, вы, тем не менее, желали бы получать наглядное указание на то, что папка содержит рабочую копию. Флажок Показывать исключённые корневые папки как нормальные позволяет вам этого достичь: с его помощью корневые папки рабочих копий в любой исключённой области (тип устройства не отмечен, либо специально исключён) будут показываться как нормальные и не устаревшие, с зелёной галочкой. Это напомнит вам, что вы наблюдаете рабочую копию, хотя пометки на папках могут быть и неправильными. Пометки для файлов вообще не показываются. Обратите внимание: контекстные меню всё же работают, даже если пометки не показываются.

В качестве отдельного исключения, диски A: и B: никогда не учитываются опцией Показывать исключённые папки как нормальные. Это происходит из-за того, что Windows приходиться обращаться к диску, что может привести к задержке в несколько секунд при запуске Проводника, даже если в вашем ПК есть накопитель на гибких магнитных дисках.

Выбор набора значков

Рисунок 4.77. Страница 'Набор значков' в диалоге настроек

Страница 'Набор значков' в диалоге настроек


Вы можете изменить набор пометок на тот, который вам больше нравится. Обратите внимание: при изменении набора значков вам, возможно, понадобиться перезагрузить компьютер для того чтобы изменения вступили в силу.

Включить обработчики наложения

Рисунок 4.78. Страница 'Обработчики значков' в диалоге настроек.

Страница 'Обработчики значков' в диалоге настроек.


По причине того, что количество оверлейных значков строго ограничено, вы можете отключить некоторые обработчики, чтобы загрузить те, которые вы хотите. Потому что TortoiseSVN использует общий компонент TortoiseOverlays, который используется совместно с другими Tortoise клиентами (например, TortoiseCVS, TortoiseHg) эта настройка также повлияет и на эти клиенты.

Настройки сети

Рисунок 4.79. Страница 'Сеть' в диалоге настроек

Страница 'Сеть' в диалоге настроек


Здесь вы можете настроить ваш сервер-посредник, если вам необходимо пройти через межсетевой экран вашей компании.

Если вам необходимо задать настройки серверов-посредников отдельно для каждого хранилища, то для такой конфигурации вам надо будет воспользоваться файлом servers Subversion. Получить доступ к нему можно при помощи кнопки Поправить. Обратитесь к разделу Область настроек времени выполнения (Runtime Configuration Area) книги о Subversion для получения подробной информации об использовании этого файла.

Вы также можете указать, какую программу должен использовать TortoiseSVN для установки безопасного соединения с хранилищем по svn+ssh. Мы рекомендуем использовать TortoisePlink.exe. Это версия популярной программы Plink, идущая вместе с TortoiseSVN, только она скомпилирована как безоконное приложение, и благодаря чему окна DOS не будут выскакивать при каждой аутентификации.

Вы должны указать полный путь к выполняемому файлу. Для TortoisePlink.exe это стандартная папка bin TortoiseSVN. Воспользуйтесь кнопкой Обзор..., чтобы его найти. Обратите внимание: если путь содержит пробелы, вы должны заключить его в кавычки, например,

"C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe"
    

Один побочный эффект безоконного приложения в том, что сообщениям об ошибках негде отображаться, и, если аутентификация завершается неудачей, вы просто получаете сообщение, говорящее что-то вроде «Unable to write to standard output (Невозможно записать в стандартный вывод)». Поэтому мы рекомендуем, чтобы вы сначала всё настроили с использованием стандартного Plink. Затем, когда всё заработает, вы сможете использовать TortoisePlink с точно такими же параметрами.

TortoisePlink не имеет никакой документации, т. к. это легкий вариант Plink. Узнайте о параметрах командной строки на сайте PuTTY.

Чтобы избежать постоянного запроса пароля, вы можете также рассмотреть применение инструмента кэширования паролей, такого как Pageant. Его также можно скачать с веб-сайта PuTTY.

В заключение, настройка SSH на сервере и клиентах является нетривиальным процессом, выходящим за рамки этой документации. Однако, вы можете найти инструкции в ЧаВо (FAQ) TortoiseSVN в разделе Subversion/TortoiseSVN SSH How-To.

Настройки внешних программ

Рисунок 4.80. Страница 'Просмотр различий' в диалоге настроек

Страница 'Просмотр различий' в диалоге настроек


Здесь вы можете задать программу для проведения сравнения/слияния, которую будет использовать TortoiseSVN. По умолчанию используется TortoiseMerge, устанавливаемая совместно с TortoiseSVN.

Прочтите «Внешние инструменты просмотра различий/слияния», где содержится список некоторых внешних программ сравнения/слияния, которые пользователи используют совместно с TortoiseSVN.

Программа просмотра различий

Для сравнения различных ревизий файлов может быть использована внешняя программа сравнения. Необходимо, чтобы эта внешняя программа могла получать имена файлов из командной строки, также как и все другие параметры. В TortoiseSVN используются замещаемые параметры, начинающиеся с %; когда TortoiseSVN встречает один из них, он заменяет его на соответствующее значение. Порядок параметров будет зависеть от используемой вами программы сравнения.

%base

Исходный файл без ваших изменений

%bname

Заголовок окна для базового файла

%nqbname

Заголовок окна базового файла без кавычек

%mine

Ваш собственный файл, с вашими изменениями

%yname

Заголовок окна для вашего файла

%nqyname

Заголовок окна вашего файла без кавычек

%burl

Адрес URL исходного файла, если доступен

%nqburl

URL исходного файла без кавычек, если доступен

%yurl

Адрес URL второго файла, если доступен

%nqyurl

URL второго файла без кавычек, если доступен

%brev

Ревизия исходного файла, если доступна

%nqbrev

Ревизия исходного файла без кавычек, если доступен

%yrev

Ревизия второго файла, если доступна

%nqyrev

Ревизия второго файла без кавычек, если доступен

%peg

Опорная (peg) ревизия, если доступна

%nqpeg

Опорная (peg) ревизия без кавычек, если доступна

%fname

Имя конфликтующего файла

%nqfname

Имя конфликтующего файла без кавычек

Заголовки окон это не просто имена файлов. TortoiseSVN рассматривает их как имена для отображения и создает соответствующие имена. Так, напимер, если вы сравниваете файл ревизии 123 с файлом в вашей рабочей копии, то имена будут имя файла : ревизия 123 и имя файла : рабочая копия.

Например, с ExamDiff Pro:

C:\Path-To\ExamDiff.exe %base %mine --left_display_name:%bname
                                    --right_display_name:%yname
      

или с KDiff3:

C:\Path-To\kdiff3.exe %base %mine --L1 %bname --L2 %yname
      

или с WinMerge:

C:\Path-To\WinMerge.exe -e -ub -dl %bname -dr %yname %base %mine
      

или с Araxis:

C:\Path-To\compare.exe /max /wait /title1:%bname /title2:%yname
                       %base %mine
      

или с UltraCompare:

C:\Path-To\uc.exe %base %mine -title1 %bname -title2 %yname
      

или с DiffMerge:

C:\Path-To\DiffMerge.exe -nosplash -t1=%bname -t2=%yname %base %mine
      

Если вы используете свойство svn:keywords для подстановки ключевых слов, и, особенно, ревизию файла (ключевое слово revision), то могут быть различия между файлами, появившееся только из-за текущего значения ключевого слова. Также, если вы используете svn:eol-style = native, то в базовом файле завершения строк будут LF, тогда как в вашем файле - CR-LF. TortoiseSVN обычно автоматически скрывает эти отличия, предварительно обрабатывая базовый файл и подставляя ключевые слова и завершения строк перед выполнением операции сравнения. Однако, это может занять длительное время с большими файлами. TortoiseSVN будет выполнять предобработку файлов, если отмечен флажок Преобразовывать файлы при сравнении с базой.

Вы также можете указать другой инструмент сравнения, применяемый для свойств Subversion. Поскольку свойства обычно являются простыми короткими текстовыми строками, вы можете использовать для просмотра более простой и компактный инструмент просмотра.

Если вы настроили альтернативный инструмент сравнения, вы можете использовать TortoiseMerge и сторонний инструмент из контекстных меню. Контекстное менюРазличия запускает основной сконфигурированный инструмент, а Shift+Контекстное менюРазличия - дополнительный.

В нижней части диалога вы можете конфигурировать программу просмотра для объединенных файлов различий (файлов заплаток). Параметры не требуются. Настройка Default для использования TortoiseUDiff, которая устанавливается вместе с TortoiseSVN, и цветовое кодирование добавленых и удаленных строк.

Так как объединенные различия (Unified Diff) это простой текстовый формат, вы можете использовать ваш любимый текстовый редактор.

Средство для слияния

Внешняя программа слияния, используемая для улаживания конфликтующих файлов. Замещение параметров применяется таким же образом, как и с программой сравнения.

%base

исходный файл без ваших или чужих изменений

%bname

Заголовок окна для базового файла

%nqbname

Заголовок окна базового файла без кавычек

%mine

ваш собственный файл, с вашими изменениями

%yname

Заголовок окна для вашего файла

%nqyname

Заголовок окна вашего файла без кавычек

%theirs

файл, каков он в хранилище

%tname

заголовок окна для файла из хранилища

%nqtname

Заголовок окна файла в хранилище без кавычек

%merged

конфликтующий файл, результат операции слияния

%mname

заголовок окна для объединённого файла

%nqmname

Заголовок окна слитого файла без кавычек

%fname

Имя файла. Пустая строка, если сравниваются два различных файла вместо двух состояний одного и того же файла.

%nqfname

Имя файла без кавычек

Например, с Perforce Merge:

C:\Path-To\P4Merge.exe %base %theirs %mine %merged
      

или с KDiff3:

C:\Path-To\kdiff3.exe %base %mine %theirs -o %merged
                      --L1 %bname --L2 %yname --L3 %tname
      

или с Araxis:

C:\Path-To\compare.exe /max /wait /3 /title1:%tname /title2:%bname
                       /title3:%yname %theirs %base %mine %merged /a2
      

или с WinMerge (2.8 or later):

C:\Path-To\WinMerge.exe %merged
      

или с DiffMerge:

C:\Path-To\DiffMerge.exe -caption=%mname -result=%merged -merge
      -nosplash -t1=%yname -t2=%bname -t3=%tname %mine %base %theirs
      

Дополнительные настройки сравнения/слияния

Рисунок 4.81. Окно дополнительных настроек сравнения/слияния в диалоге настроек

Окно дополнительных настроек сравнения/слияния в диалоге настроек


В дополнительных настройках вы можете задать различные программы сравнения и слияния для каждого расширения файла. Например, вы можете указать Photoshop как программу «сравнения» для файлов .jpg :-) Вы также можете связать свойство svn:mime-type с программой сравнения или слияния.

Для задания связи по расширению файла, вам необходимо указать это расширение. Используйте .bmp для указания файлов картинок Windows. Для задания связи по свойству svn:mime-type, укажите mime-тип, включая косую черту, например text/xml.

Настройки сохранённых данных

Рисунок 4.82. Страница 'Сохранённые данные' в диалоге настроек

Страница 'Сохранённые данные' в диалоге настроек


Для вашего удобства TortoiseSVN сохраняет многие из используемых вами настроек, а также запоминает, что вы недавно посещали. Если вы желаете полностью очистить закэшированные данные, вы можете сделать это здесь.

Предыдущие URL

При каждом извлечении рабочей копии, слиянии изменений и использовании обозревателя хранилища, TortoiseSVN запоминает последние использованные URL и предлагает их в выпадающем списке. Иногда этот список захламляется устаревшими адресами, и бывает полезно периодически его очищать.

Если вы желаете убрать один из пунктов в каком-нибудь из выпадающих списков, вы можете сделать это прямо в нём. Только щёлкните на стрелке, чтобы открылся список, наведите курсор мыши на тот пункт который вы желаете убрать и нажмите Shift+Delete.

Введённые предыдущие сообщения журнала

TortoiseSVN сохраняет последние введённые вами сообщения журнала. Они сохраняются для каждого хранилища, поэтому, если вы работаете со многими хранилищами, этот список может стать довольно большим.

Полученные кэшированные сообщения журнала

TortoiseSVN кэширует сообщения журнала, получаемые в диалоге журнала, чтобы сэкономить время при следующем показе журнала. Если кто-либо другой отредактирует уже закэшированное у вас сообщение журнала, вы не увидите это изменение, пока не очистите кэш. Кэширование сообщений журнала включается на закладке Кэширование журнала.

Размеры и расположение окон

Многие окна запоминают свои размеры и позицию на экране, какие были у них при последнем использовании.

Данные аутентификации

При вашей аутентификации на сервере Subversion имя пользователя и пароль кэшируются локально, чтобы вам не приходилось вводить их снова и снова. Вы можете пожелать очистить этот кэш из соображений безопасности, или из-за того, что вы желаете подключится к хранилищу под другим пользователем... а коллега знает, что вы используете его персональный компьютер?

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

Журнал действий

TortoiseSVN ведёт журнал всего, записываемого в его диалогах выполнения. Это может пригодиться когда, например, вы пожелаете проверить, что происходило в последней команде обновления.

Файл журнала ограничен в размере и, когда он становится слишком большим, наиболее старое содержимое отбрасывается. По умолчанию хранится 4000 строк, но вы можете настроить это число.

Отсюда вы можете посмотреть содержимое файла журнала, а также очистить его.

Кэширование журнала

Рисунок 4.83. Страница 'Кэширование журнала' в диалоге настроек

Страница 'Кэширование журнала' в диалоге настроек


В этом диалоге можно настроить кэширование сообщений журнала в TortoiseSVN, сохраняющее копию сообщений журнала и изменённых путей локально, чтобы избежать занимающих много времени загрузок с сервера. Использование кэширования может значительно ускорить работу диалога журнала и графа ревизий. Другой полезной возможностью является то, что сообщения журнала могут быть доступны при отсутствии подключения к сети, в автономном режиме.

Включить кэширование журнала

Включает кэширование полученных сообщений при получении данных журнала. Если отмечено, данные будут извлечены из кэша, если они там есть, а все незакэшированные сообщения будут получены с сервера и добавлены в кэш.

Если кэширование отключено, данные всегда будут запрашиваться непосредственно с сервера и не будут сохраняться локально.

Допускать неоднозначные URL

Иногда вам нужно связаться с сервером, который использует один и тот же URL для всех хранилищ. Таковы, например, старые версии svnbridge. Если вам необходим доступ к таким хранилищам, вы должны отметить этот флажок. Если не нужен, оставьте его неотмеченным для улучшения производительности.

Допускать неоднозначные UUID

Некоторые службы размещения сайтов дают всем своим хранилищам один и тот же UUID. Вы могли сделать это и сами, скопировав папку хранилища при создании нового. В любом случае, это плохая идея - UUID должен быть уникальным. Однако, кэш журнала всё равно будет работать в такой ситуации, если отметить этот флажок. Если вам это не нужно, оставьте его неотмеченным для улучшения производительности.

Если невозможно соединиться с хранилищем

Если вы работаете автономно, или если сервер хранилища не функционирует, то кэш журнала по-прежнему можно использовать для получения сообщений журнала, уже содержащихся в кэше. Конечно же, кэш может быть устаревшим, поэтому есть возможность выбрать, использовать ли эту функциональность.

Если данные журнала берутся из кэша (без соединения с сервером), то в заголовок окна при использовании этих сообщений будет добавлена информация о работе в автономном режиме.

Таймаут перед обновлением ведущей ревизии (сек)

Обычно, при вызове диалога журнала, желательно соединиться с сервером, чтобы посмотреть, не появились ли новые сообщения журнала. Если здесь задан ненулевой таймаут, то соединение с сервером будет производиться только по истечении времени таймаута с момента последнего запроса. Это может уменьшить количество обращений (с ожиданием ответа) к серверу, если вы часто открываете диалог журнала для медленно работающего сервера, но данные могут быть не всегда наиболее актуальными. Если вы желаете использовать эту возможность, мы предлагаем использовать для таймаута значение 300 (5 минут) в качестве компромисса.

Удалять неиспользуемые небольшие кэши через (дни)

Если вы просматриваете множество хранилищ, у вас накопится множество кэшей журналов. Если вы их не используете активно, то их кэши большими не вырастут, и TortoiseSVN по умолчанию очистит их после заданного времени. Используйте этот параметр для управления очисткой кэшей.

Максимальный размер удаляемого неактивного кэша

Более крупные кэши тяжелее накопить вновь, поэтому TortoiseSVN удаляет только маленькие кэши. Тонко настроить этот порог можно при помощи этого значения.

Максимальное количество отказов до удаления кэша

Изредка что-то может пойти не так с кэшированием и произойдёт сбой. Если это случается, кэш удаляется автоматически для предотвращения повторного возникновения проблемы. Если вы используете менее стабильные ночные сборки, вы можете выбрать, чтобы кэш в этом случае сохранялся.

Закэшированные хранилища

На этой странице расположен список закэшированных локально хранилищ с дисковым пространством, занятым под кэш. Если выбрать какое-либо из хранилищ, можно будет использовать кнопки, находящиеся под списком.

Щёлкните на кнопке Обновление, чтобы полностью обновить кэш и заполнить все существующие пропуски. Для больших хранилищ это может занять очень много времени, но может понадобиться, если вы собираетесь работать автономно, и вам необходим наиболее полный кэш.

Щёлкните на кнопке Экспорт для экспорта всего кэша в виде набора CSV-файлов. Это может пригодиться, если вы желаете обработать данные журнала во внешней программе, хотя это будет полезно в основном разработчикам.

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

Статистика кэша журнала

Рисунок 4.84. Окно 'Статистика кэша журнала', открываемое из диалога настроек

Окно 'Статистика кэша журнала', открываемое из диалога настроек


Щёлкните на кнопке Подробнее, чтобы увидеть подробную статистику для конкретного кэша. Многие из показываемых здесь полей предоставляет интерес в основном для разработчиков TortoiseSVN, поэтому не все из них описаны подробно.

ОЗУ

Объём памяти, необходимой для обслуживания этого кэша.

Диск

Объём дискового пространства, занятого закэшированными данными. Данные хранятся в сжатом виде, и поэтому использование диска обычно довольно скромное.

Соединение

Показывает, было ли доступно хранилище при последнем использовании кэша.

Возраст: обновление

Дата последнего изменения содержимого кэша.

Возраст: Ведущая ревизия

Дата последнего запроса ведущей ревизии с сервера.

Авторы

Количество различающихся авторов содержащихся в кэше сообщений.

Пути

Количество зарегистрированных путей, которые были бы выведены при использовании svn log -v.

Пропущ.диапаз.

Количество диапазонов неполученных ревизий, которые просто не были запрошены. Это показатель количества пропусков в кэше.

Max ревизия

Наибольший номер ревизии, сохранённой в кэше.

Ревизий всего

Количество ревизий, сохранённых в кэше. Это другой показатель полноты кэша.

Скрипты ловушек, выполняемые на стороне клиента

Рисунок 4.85. Страница 'Скрипты ловушек' в диалоге настроек

Страница 'Скрипты ловушек' в диалоге настроек


В этом диалоге можно настроить скрипты ловушек, которые будут запускаться автоматически при совершении определённых действий Subversion. В отличие от скриптов ловушек, описанных в «Скрипты ловушек, выполняемые на стороне сервера», эти скрипты выполняются локально на клиенте.

Одним из применений для таких ловушек может быть запуск программы вроде SubWCRev.exe для обновления номеров версий после фиксации, и, возможно, для автоматического перезапуска сборки.

Обратите внимание, что вы также можете задать скрипты-обработчики с помощью специальных свойств в вашей рабочей копии. Для более подробной информации см. «Свойства проекта в TortoiseSVN».

Рисунок 4.86. Окно 'Настройка скрипта ловушки', открываемое из диалога настроек

Окно 'Настройка скрипта ловушки', открываемое из диалога настроек


Чтобы добавить скрипт ловушки, просто щёлкните на Добавить... и заполните необходимые данные.

В настоящее время доступны скрипты-обработчики следующих типов

Начало-фиксации

Вызывается перед показом диалога фиксации. Может понадобиться, если ловушка изменяет версированный файл и оказывает воздействие на список файлов, которые должны быть зафиксированы и/или на сообщение фиксации. Однако, вы должны учитывать, что из-за того, что ловушка вызывается на ранней стадии, полный список выбранных для фиксации объектов не доступен.

Ручная перед-фиксацией

Если указано, то в диалоге фиксации отображается кнопка Выполнить скрипт ловушки, которая при нажатии выполняет указанный скрипт ловушки. Скрипт ловушки получает список всех отмеченных файлов и папок, и сообщение фиксации, если оно было введено.

Проверка-фиксации

Вызывается после того как пользователь нажмет кнопку OK в диалоге фиксации, но до закрытия диалога фиксации. Эта ловушка получает список всех отмеченных файлов. Если ловушка вернет ошибку, то диалог фиксации останется открытым.

Если возвращённое сообщение об ошибке содержит пути разделённые символами перевода строки, то такие пути станут выделенными в диалоге фиксации после отображения сообщения об ошибке.

Перед-фиксацией

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

После-фиксации

Вызывается после окончания фиксации (независимо, успешного или нет).

Начало-обновления

Вызывается перед отображением диалога обновить-до-ревизии.

Перед-обновлением

Вызывается перед фактическим началом операции Subversion 'обновление' или 'переключение'.

После-обновления

Вызывается после окончания операции обновления, переключения или извлечения (независимо, успешного или нет).

Перед-соединением

Вызывается перед попыткой соединится с хранилищем. Вызывается как минимум раз в пять минут.

Ловушка определяется для конкретного пути в рабочей копии. Достаточно указать путь до папки верхнего уровня; при выполнении операции в её подпапке, TortoiseSVN автоматически производит поиск подходящего пути выше по иерархии[6].

Далее вы должны указать командную строку для выполнения, начинающуюся с пути к скрипту ловушки или исполняемому файлу. Это может быть пакетный файл, исполняемый файл, или любой другой файл имеющий корректное расширение файла, например, скрипт на Perl. Обратите внимание, что скрипт не должен быть указан с помощью UNC пути, т. к. оболочка Windows не разрешает выполнение таких скриптов по причинам ограничений безопасности.

Командная строка содержит несколько параметров, значения которых подставляются TortoiseSVN. Набор доступных для использования параметров зависит от вызываемой ловушки. У каждой ловушки есть свои собственные параметры, передаваемые в следующем порядке:

Начало-фиксации

PATHMESSAGEFILECWD

Ручная перед-фиксацией

PATHMESSAGEFILECWD

Перед-фиксацией

PATHDEPTHMESSAGEFILECWD

После-фиксации

PATHDEPTHMESSAGEFILEREVISIONERRORCWD

Начало-обновления

PATHCWD

Перед-обновлением

PATHDEPTHREVISIONCWD

После-обновления

PATHDEPTHREVISIONERRORCWDRESULTPATH

Перед-соединением

no parameters are passed to this script. You can pass a custom parameter by appending it to the script path.

Значение каждого из этих параметров описано здесь:

PATH

Путь к временному файлу, содержащему все пути, для которых была запущена операция. Во временном файле каждый путь расположен в отдельной строке.

Обратите внимание, что для операций выполняемых удалённо, например, в обозревателе хранилища, эти пути не локальные, а URL-адреса задействованных элементов.

DEPTH

Глубина охвата, с которой выполнялись фиксация/извлечение.

Возможные значения:

-2

svn_depth_unknown (неизвестная глубина)

-1

svn_depth_exclude (без спуска)

0

svn_depth_empty (только этот элемент)

1

svn_depth_files (только потомки-файлы)

2

svn_depth_immediates (непосредственные потомки, включая папки)

3

svn_depth_infinity (полностью рекурсивно)

MESSAGEFILE

Путь к файлу, содержащему сообщение журнала для фиксации. Файл содержит текст в кодировке UTF-8. После успешного выполнения ловушки начало-фиксации сообщение журнала считывается заново, благодаря чему ловушка получает возможность его изменить.

REVISION

Ревизия в хранилище, до которой должно производиться обновление, или же номер ревизии после выполнения фиксации.

ERROR

Путь к файлу, содержащему сообщение об ошибке. Если ошибки не было, файл будет пустым.

CWD

Текущая рабочая папка, для которой запускается скрипт. Устанавливается в общую корневую папку всех затронутых путей.

RESULTPATH

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

Обратите внимание: хотя мы и указываем для удобства имена параметров, вам нет необходимости ссылаться на эти имена в настройках ловушек. Все параметры, перечисленные для каждой ловушки, передаются всегда, вне зависимости от того, нужны они вам или нет ;-)

Если вы желаете, чтобы операция Subversion откладывалась до окончания работы ловушки, отметьте Ждать окончания работы скрипта.

Обычно бывает желательно скрыть безобразные окна сеансов DOS, открывающиеся при работе скрипта, поэтому флажок Скрыть скрипт во время работы по умолчанию отмечен.

Примерный клиентский скрипт ловушки может быть найден в папке contrib в хранилище TortoiseSVN. («Лицензия» объясняет, как получить доступ к хранилищу.)

При отладке скриптов ловушек вы можете продублировать ход процесса на консоль или добавить паузу, чтобы пристановить закрытие окна после выполнения скрипта. По причине того, что ввод-вывод перенаправлен, это не будет работать как обычно. Однако, вы можете перенаправить явно ввод и вывод на устройство CON чтобы обойти это. Например,

echo Checking Status > con
pause < con > con
    

Небольшой инструмент добавленный в папку установки TortoiseSVN называется ConnectVPN.exe. Вы можете использовать этот инструмент, сконфигурированный как ловушку перед-соединением для автоматического подключения к вашей VPN перед тем как TortoiseSVN пытается соединится с хранилищем. Просто передайте этому инструменту имя соединения VPN первым параметром.

Интеграция с системами отслеживания проблем

TortoiseSVN может использовать подключаемый модуль COM для запроса систем отслеживания проблем из диалога фиксации. Использование таких подключаемых модулей описывает «Получение информации из системы отслеживания проблем». Если ваш системный администратор предоставил вам такой модуль, который вы уже установили и зарегистрировали, это то место, где указывается, как он будет интегрирован с вашей рабочей копией.

Рисунок 4.87. Страница интеграции с системой отслеживания проблем в диалоге настроек

Страница интеграции с системой отслеживания проблем в диалоге настроек


Щёлкните на Добавить... для использования подключаемого модуля с конкретной рабочей копией. Здесь вы можете указать путь рабочей копии, выбрать из выпадающего списка, какой подключаемый модуль использовать из всех зарегистрированных, и передаваемые параметры. Набор параметров будет зависеть от подключаемого модуля, но может включать ваше имя пользователя в системе отслеживания проблем, чтобы модуль мог запросить назначенные вам проблемы.

Если вы хотите, чтобы все пользователи использовали один и тот же COM модуль для вашего проекта, вы можете указать этот модуль вместе со свойствами bugtraq:provideruuid, bugtraq:provideruuid64 и bugtraq:providerparams.

bugtraq:provideruuid

Это свойство определяет IBugtraqProvider COM UUID, например, {91974081-2DC7-4FB1-B3BE-0DE1C8D6CE4E}. (Это пример UUID Gurtle bugtraq provider, который является провайдером для системы отслеживания ошибок Google Code.)

bugtraq:provideruuid64

Это такое же свойство как и bugtraq:provideruuid только для 64-битной версии IBugtraqProvider.

bugtraq:providerparams

Это свойство задаёт параметры, передаваемые IBugtraqProvider.

Прочтите документацию вашего модуля IBugtraqProvider, чтобы узнать, что указывать в данных двух свойствах.

Настройки TortoiseBlame

Рисунок 4.88. Страница TortoiseBlame в диалоге настроек

Страница TortoiseBlame в диалоге настроек


Настройки, используемые TortoiseBlame, задаются через главное контекстное меню, а не из самой TortoiseBlame.

Цвета

TortoiseBlame может использовать цвет фона для обозначения возраста строк файла. Вы указываете крайние значения, задавая цвета для самых новых и самых старых ревизий, и TortoiseBlame применяет линейную интерполяцию между этими цветами в соответствии с ревизией из хранилища, указанной в каждой строке.

Вы можете указать разные цвета для использования на полосе навигации. По умолчанию на полосе навигации используется насыщенный контраст при этом фон основного окна остается светлым, чтобы вы смогли прочитать текст.

Шрифт

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

Размер табул.

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

Настройки TortoiseUDiff

Рисунок 4.89. Диалог Настройки, страница TortoiseUDiff

Диалог Настройки, страница TortoiseUDiff


Настройки используемые TortoiseUDiff управляются из основного контекстного меню, не напрямую из TortoiseUDiff.

Цвета

Цвета используемые TortoiseUDiff по умолчанию обычно в порядке, но вы можете настроить их здесь.

Шрифт

Вы можете выбрать начертание и размер шрифта, используемого для отображения текста.

Размер табул.

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

Экспортировать TSVN настройки

Рисунок 4.90. Диалог Настройки, страница Синхронизация

Диалог Настройки, страница Синхронизация


Вы можете синхронизировать все настройки TortoiseSVN через зашифрованный файл. Файл шифруется с помощью введённого пароля, так что вам не стоит беспокоиться, если храните этот файл в "облачной" папке, например, OneDrive, GDrive, DropBox, ...

Когда путь и пароль заданы TortoiseSVN будет синхронизировать все настройки автоматически и поддерживать их в синхронизации.

Вы также можете экспортировать/импортировать зашифрованные файлы со всеми настройками вручную. Когда вы делаете это, у вас спросят путь файла и пароль для шифрации/дешифрации файла настроек.

При экспорте настроек вручную вы также можете выборочно включить все локальные настройки, которые не включаются при обычном экспорте или синхронизации. Локальные настройки это настройки, которые включают локальные пути, которые обычно отличаются между компьютерами. Эти локальные настройки включают сконфигурированные инструменты различия и слияния, и скрипты-обработчики.

Дополнительные настройки

Некоторые редко используемые настройки доступны только на дополнительной странице диалога настроек. Эти настройки вносят изменения прямо в реестр и необходимо предварительно ознакомиться с тем, для чего используются эти настройки. Не рекомендуется изменять эти настройки, если вы не уверены, что вам необходимо их изменить.

AllowAuthSave

Иногда несколько пользователей используют одну и ту же учетную запись на одном компьютере. В таких ситуациях не рекомендуется сохранять данные аутентификации. Установка значения этой настройки в false отключает кнопку сохранить аутентификацию в диалоге аутентификации.

AllowUnversionedObstruction

Если при обновлении добавляется новый файл из хранилища, который уже существует в локальной рабочей копии как файл без версии, то действие по умолчанию - это оставить локальный файл, отображая его как (возможно) измененённую версию нового файла из хранилища. Если вы хотите, чтобы TortoiseSVN создавал конфликт в таких случаях, то установите значение false.

AlwaysExtendedMenu

Как и в обозревателе, TortoiseSVN показывает дополнительные команды, если зажата клавиша Shift при открытии контекстного меню. Чтобы вынудить TortoiseSVN всегда показывать дополнительные команды, установите значение true.

AutoCompleteMinChars

Минимальное количество символов, начиная с которых редактор показывает показывает всплывающее окно автозаполнения. Значение по умолчанию — 3.

AutocompleteRemovesExtensions

Список автозавершения, показываемый в редакторе сообщений фиксации, отображает список имен файлов для фиксации. Чтобы оставить имена файлов, но убрать расширения файлов, установите значение true.

BlockPeggedExternals

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

Установите значение в false в случае, если вы хотите зафиксировать изменения указанных файлов из внешних репозиториев.

BlockStatus

Если вы не хотите, чтобы обозреватель обновлял показания статуса, пока выполняется другая команда TortoiseSVN (например, Обновить, Фиксировать, ...), то установите значение true.

CacheTrayIcon

Чтобы добавить иконку кэширования в системный лоток для программы TSVNCache, установите значение true. Это может быть полезным только для разработчиков, поскольку позволяет изящно завершить программу.

ColumnsEveryWhere

Дополнительные колонки, которые TortoiseSVN добавляет к подробному виду в обозревателе Windows, обычно активны только в рабочей копии. Если вы хотите, чтобы это было доступно везде, а не только в рабочей копии, то установите значение true. Имейте в виду, что дополнительные колонки появляются только в Windows XP. В Vista и более поздних версиях ОС эта функция больше не поддерживается. Однако некоторые заменители проводника от других производителей поддерживают такое даже для версий Windows после XP.

ConfigDir

Здесь можно указать другое месторасположение для конфигурационного файла Subversion. Это затронет все операции TortoiseSVN.

CtrlEnter

В большинстве диалоговых окон TortoiseSVN вы можете использовать сочетание клавиш Ctrl+Enter, чтобы закрывать окна, также как и при нажатии кнопки ОК. Если же вы хотите выключить эту функцию, то установите значение false.

Debug

Установите это в true если хотите чтобы при каждом запуске TortoiseProc.exe появлялся диалог показывающий командную строку с параметрами запуска.

DebugOutputString

Установите это в true если хотите чтобы TortoiseSVN печатал отладочные сообщения во время выполнения. Эти сообщения могут быть отловлены только специальными инструментами.

DialogTitles

Формат по умолчанию (значение 0) заголовков диалогов url/path - name of dialog - TortoiseSVN. Если вы установите значение в 1, то формат изменится на name of dialog - url/path - TortoiseSVN.

DiffBlamesWithTortoiseMerge

TortoiseSVN позволяет вам назначать внешнюю программу просмотра изменений. Многие из таких программ, однако, не совместимы с программой авторства изменений («Авторство различий»), поэтому вы можете использовать TortoiseMerge в этом случае. Для этого установите значение true.

DlgStickySize

Это значение определяет количество пикселей, на которое диалог приближается к границе перед тем как приклеится к ней. Значение по умолчанию 3. Для отключения этого значения установите значение в ноль.

FixCaseRenames

Некоторые приложения изменяют регистр имени файлов без предупреждения, но в действительности никакой необходимости в таких изменениях нет. Например, изменение file.txt на FILE.TXT не повредит обычному Windows-приложению, но Subversion в таких ситуациях чувствителен к регистру. Так что TortoiseSVN автоматически исправляет такие изменения.

Если же вы не хотите, чтобы TortoiseSVN автоматически исправлял такие изменения регистра, то можете установить это значение в false.

FullRowSelect

Контроль за списком статуса, используемый в различных диалогах (например, фиксировать, проверить на наличие изменений, добавить, обновить до ревизии, ...), использует полностроковое выделение (т.е. если вы выбираете одну запись, то выделяется весь ряд, а не только первая колонка). Это прекрасно, но выделение выбранного ряда также затрагивает фоновое изображение внизу справа, которое в результате может неправильно отобразиться. Чтобы отключить полностроковое выделение, установите значение false.

GroupTaskbarIconsPerRepo

Эта настройка определяет, как группируются иконки различных диалогов и окон TortoiseSVN на панели задач Windows 7. Эта настройка не работает в Vista.

  1. Значение по умолчанию — 0. При такой настройке иконки сгруппированы по типу приложения. Все диалоги TortoiseSVN сгруппированы вместе, все окна TortoiseMerge сгруппированы вместе, ...

    Рисунок 4.91. Панель задач с группировкой по-умолчанию

    Панель задач с группировкой по-умолчанию


  2. Если установлено значение 1, то вместо всех диалогов сгруппированных в одну группу на приложение, они группируются по хранилищу. Например, если у вас есть диалог журнала сообщений и диалог фиксации, открытые для хранилища A, и диалог проверки наличия измений и диалог журнала для хранилища B, то отображаются две группы иконок приложения в панели задач Windows 7, одна группа для каждого хранилища. Но окна TortoiseMerge не группируются с диалогами TortoiseSVN.

    Рисунок 4.92. Панель задач с группировкой по хранилищам

    Панель задач с группировкой по хранилищам


  3. Если установлено значение 2, то группировка работает также как и при значении 1, за исключением того, что окна TortoiseSVN, TortoiseMerge, TortoiseBlame, TortoiseIDiff и TortoiseUDiff группируются вместе. Например, если у вас есть открытый диалог фиксации и вы делаете двойной щелчок на изменённом файле, то открываемое окно просмотра различий TortoiseMerge будет помещено в ту же группу иконок на панели задач, что и иконка диалога фиксации.

    Рисунок 4.93. Панель задач с группировкой по хранилищам

    Панель задач с группировкой по хранилищам


  4. Если установлено значение 3, то группировка работает также как при значении 1, но группировка выполняется в соответствии с рабочей копией, а не хранилищем. Это полезно когда все ваши проекты находятся в одном хранилище, но для каждого проекта создана отдельная рабочая копия.

  5. Если установлено значение 4, то группировка работает также как при значении 2, но группировка выполняется в соответствии с рабочей копией, а не хранилищем.

HideExternalInfo

Если установлено false, то каждое svn:externals при обновлении отображается отдельно.

Если установлено true (по умолчанию), то информация об обновлении внешних показывается только если обновление затрагивает внешние, т.е. изменены каким-либо образом. Иначе ничего не отображается, как и с обычными файлами и папками.

GroupTaskbarIconsPerRepoOverlay

Это не работает если настройка GroupTaskbarIconsPerRepo установлена в значение 0 (см. выше).

Если эта настройка установлена в true, то каждая иконка на панели задач Windows 7 отображает маленький цветной прямоугольник с оверлейным значком, показывающий для какого хранилища используется диалог/окно.

Рисунок 4.94. Группировка панели задач с цветным оверлеем хранилища

Группировка панели задач с цветным оверлеем хранилища


IncludeExternals

По умолчанию, TortoiseSVN всегда выполняет обновление с включенными внешними объектами. Это помогает избежать проблем с несовместимостью рабочих копий. Если же, однако, у вас много заданных внешних объектов, то обновление может занять долгое время. Если установить значение false, то обновление будет проходить с выключенными внешними объектами. Чтобы выполнить обновление с включёнными внешними объектами, используйте команду Обновить до ревизии... или верните значение true.

LogFindCopyFrom

When the log dialog is started from the merge wizard, already merged revisions are shown in gray, but revisions beyond the point where the branch was created are also shown. These revisions are shown in black because those can't be merged.

If this option is set to true then TortoiseSVN tries to find the revision where the branch was created from and hide all the revisions that are beyond that revision. Since this can take quite a while, this option is disabled by default. Also this option doesn't work with some SVN servers (e.g., Google Code Hosting, see issue #5471).

LogMultiRevFormat

Строка формата для сообщений журнала при множественном выборе ревизий в диалоге журнала.

Вы можете использовать следующие подстановки в строке формата:

%1!ld!
заменяется номером ревизии
%2!s!
заменяется коротким сообщением ревизии
LogStatusCheck

Диалоговое окно журнала показывает ревизию и путь к рабочей копии жирным шрифтом. Но это требует, чтобы диалоговое окно журнала скопировало статус этого пути. Поскольку для очень больших рабочих копий это может занять довольно много времени, вы можете установить значение false, чтобы деактировать эту функцию.

MergeLogSeparator

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

NumDiffWarning

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

OldVersionCheck

TortoiseSVN проверяет на наличие новой версии примерно раз в неделю. Если существует новая версия, то диалоговое окно фиксации показывает ссылку с этой информацией. Если вы предпочитаете старое поведение, когда появляется диалоговое окно, извещающее об обновлении, то установите значение true.

RepoBrowserTrySVNParentPath

Обозреватель хранилища пробует получить веб-страницу, которую генерирует сервер SVN сконфигурированный директивой SVNParentPath, чтобы получить список всех хранилищ. Чтобы отключить такое поведение, установите это значение в false.

ScintillaDirect2D

Эта опция включает использование ускоренную отрисовку Direct2D в элементе Scintilla, который используется как поле ввода, например, в диалоге фиксации, и также для просмотра унифицированных различий. С некоторыми графическими картами, тем не менее, это иногда работает некорректно, так что не всегда виден курсор для ввода текста. Если такое происходит, то вы можете выключить эту возможность установив значение false.

OutOfDateRetry

Если вы не хотите чтобы TortoiseSVN после ошибки Out of date автоматически просил обновить рабочую копию, то установите значение в false.

ShellMenuAccelerators

TortoiseSVN использует ускорители для своих пунктов контекстного меню обозревателя. Поскольку это может привести к дублированию ускорителей (например, у SVN Фиксировать есть Alt-C ускоритель, но у пункта меню обозревателя Копировать он тоже есть). Поэтому, если вы не хотите или вам не нужно использовать ускорители в пунктах TortoiseSVN, установите значение false.

ShowContextMenuIcons

Это может пригодиться, если вы используете другой обозреватель файлов (не обозреватель Windows) или если у вас некорректно отображается контекстное меню. Установите значение false, если вы не хотите, чтобы TortoiseSVN отображал иконки для пунктов меню в контекстной оболочке. Верните значение true, чтобы снова отображать иконки.

ShowAppContextMenuIcons

Если вы не хотите, чтобы TortoiseSVN показывал иконки для контекстного меню в своих диалогах, установите значение false.

StyleCommitMessages

Диалоговые окна журнала и фиксации используют стили (например, жирный, курсивный шрифт) в сообщениях фиксации (прочитайте «Сообщения журнала при фиксации», чтобы узнать больше). Если вы не хотите использовать это, установите значение false.

UpdateCheckURL

Это значение содержит URL, по которому TortoiseSVN загружает текстовый файл для проверки на наличие обновлений. Это может полезно для администраторов компаний, которые не хотят, чтобы пользователи обновляли TortoiseSVN без их разрешения.

VersionCheck

TortoiseSVN проверяет на наличие новой версии примерно раз в неделю. Если вы не хотите, чтобы TortoiseSVN выполнял эту проверку, то установите значение false.



[5] Да и для ограничения трафика тоже - прим. переводчика

[6] Для обозначения корня иерархии используется символ * - прим. переводчика