Использование контрольных точек

Наблюдение - название особенности CVS позволяющей информировать пользователей хранилища, когда разработчик начинает редактирование файла. Для использования наблюдения необходимо, чтобы файл $CVSROOT/CVSROOT/notify был установлен корректно. Он не обсуждается здесь, если вы нуждаетесь в информации об его установке обратитесь к одной из книг, перечисленных в приложении.

Основная поддержка наблюдения - шесть пунктов меню.

Чтобы добавить наблюдение к одному или нескольким файлам, используйте меню Расширенный Установить наблюдение.... В диалоге, вы выбираете типы событий, поддерживаемые CVS. Например, если вы хотите получать уведомления когда файл передаётся, выберите параметр Только и Передачи. если вы хотите получать уведомления в любом случае выберите параметр Все. При принятии этого диалога будет выполнена команда

cvs watch add -a commit имена файлов

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

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

cvs watch remove имена файлов

возможно с опцией -a для выбранных событий.

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

cvs watchers имена файлов

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

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

cvs edit имена файлов

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

cvs editors имена файлов

Сессия редактирования автоматически закончится когда вы передадите файл. В этот момент всем, зарегистрировавшим наблюдение на этом файле, будет отослано уведомление о Окончании редактирования фалов. Конечно, вы можете прервать сеанс редактирования файла и вернуться к его предыдущей версии. Это делается с использованием меню РасширенныйЗакончить редактирование фалов. Обратите внимание, что Cervisia не будет спрашивать подтверждения, и вся выполненная работа в этом файле с момента использования меню РасширенныйРедактировать файлы, будет потеряна. При этом Cervisia использует команду

echo y | cvs unedit имена файлов

Пока мы рассматриваем случай, где редактирование и окончание редактирования используется разработчиками добровольно. Кроме того CVS поддерживает и модель с принудительным использованием этих команд. Команда, используемая для переключения в принудительную модель - cvs watch on, которую мы не будем рассматривать далее, потому что она используется преимущественно администраторами репозиториев. Однако, важным моментом является то, что при использовании проектом редактирования, рабочие копии доступны только для чтения. (если вы не используете уловки типа chmod). Только когда вы используете меню РасширенныйРедактировать файлы, файл становится доступным для записи. И становится только для чтения, когда вы используете РасширенныйЗакончить редактирование фалов.

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

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