Когда репозиторий Borges интегрирован в среду CVS, изменяется поведение некоторых целей и становятся доступными некоторые другие. Мы подробно опишем здесь эти особенности.
Если вы предпочитаете, чтобы Borges не выполнял никаких команд CVS, даже если вы работаете в среде CVS, добавьте опцию CVS=no в свои командные строки make.
В основном некоторые команды, добавляющие в проект новые шаблоны, автоматически добавляют эти новые файлы в CVS.
Если вы не хотите дублировать свои изменения на сервер CVS при выполнении команд локально, просто добавьте опцию CVS=no в свою командную строку при запуске представленных ниже команд. Не забудьте затем вручную зафиксировать свои изменения на CVS.
При добавлении нового документа все файлы шаблонов, созданные Borges'ом (объекты, модули, каталоги с изображениями и т.д.), автоматически добавляются и фиксируются в CVS. То же самое происходит с master.top.xml и всеми необходимыми Makefile'ами. Всё это выполняется для всех активных языков.
Здесь происходит то же самое для всех модулей и объектов, необходимых для всех документов.
Это цель, выполняемая в каталоге супердокумента, создаёт новые модули шаблонов для всех языков и добавляет их в CVS. Это полезно, если вы только что добавили новые модули в существующий супердокумент.
Когда модуль переходит в состояние pproof (или любое другое, названное на этапе 2translate), его содержимое копируется в модули перевода. Затем Borges автоматически зафиксирует модули перевода в CVS.
Когда вы обновляете ревизию модуля (даже .todo), она автоматически фиксируется со стандартным сообщением, показывающим выполненную задачу и участника. Вы можете переопределить это сообщение по умолчанию, указав свой собственный журнал изменений в необязательном параметре CVSLOG.
Появились некоторые новые команды для упрощения управления источниками CVS из Borges.
Эта цель извлекает последнюю версию из CVS и перенастраивает репозиторий.
Эта цель импортирует текущий репозиторий Borges на сервер CVS. Смотрите Раздел 1, «Создание нового проекта в CVS».
Эта цель, выполненная в каталоге супердокумента, зафиксирует модифицированный супердокумент (master.top.xml) в CVS, предварительно полностью проверив его правильность.
Эта цель, выполненная в каталоге модулей (напр., в modules/ru/), зафиксирует изменённый модуль (<модуль>.xml) в CVS, предварительно полностью проверив его правильность.
Эта цель, выполненная в каталоге модулей (напр., в modules/ru/), проверит правильность и зафиксирует все изменённые модули в текущем каталоге. С использованием опции modules действие будет выполнено только над указанными модулями.
Эта цель, выполненная в каталоге изображений (напр., в images/ru/), добавит и зафиксирует изменённое изображение (<изображение.расш>) в CVS, предварительно полностью проверив его правильность.
Эта цель, выполненная в каталоге объектов (напр., в entities/ru/ или manuals/My_Book/ru/), добавит и зафиксирует изменённый файл объектов (<объект>.ent) в CVS предварительно полностью проверив его правильность.
Если вы предпочитаете не указывать журнал изменений в редакторе CVS (обычно vi) всякий раз, когда вы фиксируете файл в CVS, вы можете указать свои комментарии прямо в командной строке, благодаря опции CVSLOG. Например,
make мой_модуль.commit CVSLOG="Fixed the foo option syntax"
непосредственно зафиксирует изменения, сделанные в модуле mymodule, с указанным changelog'ом, не открывая при этом текстовый редактор.