Управление исходными текстами. Часть 1. Краткое руководство по CVS | страница 5



.

ПРЕДУПРЕЖДЕНИЕ. Рабочий каталог – не то же самое, что репозиторий, и он не может быть подкаталогом репозитория. И наоборот, репозиторий не может находиться в подкаталоге рабочего каталога. В противном случае последствия непредсказуемы.

Чтобы указать системе, где находится репозиторий, необходимо указать его идентификатор (CVSROOT). Это строка, однозначно определяющая репозиторий, однако её формат зависит от того, как система получает доступ к репозиторию. Существуют разные методы доступа к репозиторию – локально, по сети, с разным уровнем защиты и по разным протоколам. Чтобы сообщить CVS, каким конкретно методом пользоваться, используется нотация метода доступа (access method notation). В общем виде CVSROOT выглядит следующим образом:

>:метод-доступа:некоторые-данные-специфичные-для-метода

Рисунок 3.

Например, если ваш репозиторий находится на локальном или сетевом диске, вы можете использовать метод доступа local. Тогда CVSROOT будет выглядеть так (для Windows):

>:local:c:/cvs/repository/

или так (для UNIX):

>:local:/usr/local/cvsroot

ПРЕДУПРЕЖДЕНИЕ. Обратите внимание, что для Windows слэши всё равно должны быть прямыми, а не обратными, как это принято в самой операционной системе. Кроме того, в CVS имена файлов чувствительны к регистру символов (case sensitive), тогда как Windows игнорирует регистр. Это может привести к проблемам, если у вас в репозитории находятся файлы File.h и file.h. Старайтесь использовать нижний регистр для имен файлов при работе с Windows.

Примеры CVSROOT с комментариями:

>:pserver:user@megasoft.com:/cvsroot

> Метод доступа pserver – простая авторизация паролем

> Сервер находится по адресу megasoft.com

> Имя пользователя “user”

> Локальный путь на сервере к репозиторию - /cvsroot

> Пользователь должен выполнить команду login перед доступом к серверу

>:sspi:dev-server:/projects

> Метод доступа sspi – использование авторизации в Windows-домене

> Сервер – dev-server в текущем домене

> Имя пользователя – текущий пользователь Windows

> Условное имя репозитория на сервере – projects

>:method:[[user][:password]@]hostname[:[port]]/path/to/repository

> Общий вид для удалённого репозитория

> Использовать открытый пароль в CVSROOT крайне не рекомендуется, лучше пользоваться командой cvs login

Совмещение и обновление

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