2004 г
Проект Русской Документации FreeBSD
содержание
Анонимный CVS (известный также как, anoncvs) это возможность, предоставляемая утилитами CVS,
поставляемыми с FreeBSD для синхронизации с удаленным CVS репозиторием. Помимо прочего,
он позволяет пользователям FreeBSD без специальных привилегий (с правами только на
чтение) выполнять CVS операции на одном из официальных anoncvs серверов проекта FreeBSD.
Для использования этой возможности, просто установите переменную CVSROOT на соответствующий сервер anoncvs, введите общеизвестный
пароль ``anoncvs'' в ответ на приглашение команды cvs login, а
затем используйте cvs(1) для доступа к
репозиторию как к обычному локальному CVS.
Замечание: Команда cvs login сохраняет пароли,
использованные для авторизации на сервере CVS в файле с именем .cvspass в каталоге HOME. Если этот файл не
существует, вы можете получить сообщение об ошибке при первом запуске cvs login. Просто создайте пустой файл .cvspass и попробуйте еще раз.
Хотя можно сказать, что сервисы CVSup и anoncvs выполняют в сущности похожие
функции, есть несколько отличий, которые могут повлиять на выбор метода синхронизации. По
своей сути, CVSup гораздо более эффективно использует сетевые
ресурсы, и из двух этих программ он более интеллектуален, но за его эффективность
приходится платить. Во-первых, для того, чтобы появилась возможность хоть что-то получить
этим методом, CVSup потребуется установить и настроить
специальную программу, а во-вторых, этот CVSup позволяет
синхронизацию только довольно больших частей исходных текстов, называемых коллекциями.
Anoncvs напротив может использоваться для получения как
одного файла, так и всей программы (например ls или grep), с помощью ссылки на имя модуля CVS. Конечно, anoncvs хорошо подходит только при операциях на чтение CVS
репозитория, поэтому если вы намереваетесь производить локальную разработку в одном из
репозиториев проекта FreeBSD, вам подойдет только CVSup.
A.3.2. Использование анонимного CVS
Настройка cvs(1) для
использования анонимного CVS репозитория означает установку переменной окружения CVSROOT на один из anoncvs серверов проекта FreeBSD. На момент написания этого
документа доступны следующие сервера:
-
Австрия:
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs (Используйте cvs
login и введите любой пароль в ответ на приглашение.)
-
Франция:
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (pserver (пароль ``anoncvs''), ssh
(нет пароля))
-
Германия:
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs (Используйте cvs
login и введите пароль ``anoncvs'' в ответ на приглашение.)
-
Германия:
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs (rsh, pserver, ssh, ssh/2022)
-
Япония:
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (Используйте cvs
login и введите пароль ``anoncvs'' в ответ на приглашение.)
-
Швеция:
freebsdanoncvs@anoncvs.se.FreeBSD.org:/home/ncvs (только ssh - без пароля)
-
США:
:pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs (Используйте cvs
login и введите пароль ``anoncvs'' в ответ на приглашение.)
Поскольку CVS позволяет выполнить ``check out'' практически любой версии исходных
текстов FreeBSD, которые когда-либо существовали (или, в некоторых случаях, будут
существовать), вам необходимо познакомиться с флагом cvs(1) для ревизий
(-r) и с параметрами, которые могут быть использованы с этим
флагом в репозитории проекта FreeBSD.
Есть два вида тегов, теги ревизий и теги ветвей. Теги ревизий отвечают за определенную
ревизию. Их значение остается прежним изо дня в день. Теги ветвей сопоставляются
последней ревизии определенной ветви разработки, в любой момент времени. Поскольку теги
ветвей не сопоставлены какой-то определенной ревизии, завтра они могут означать совсем не
то, что сегодня.
Разд. A.6 содержит теги ревизий, которые могут
заинтересовать пользователей. Опять же, ни один из них не подходит для коллекции портов,
поскольку в коллекции портов нет разнообразия ревизий.
Если вы указываете тег ветви, то обычно получаете последнюю версию файлов этой ветви
разработки. Если вы хотите получить предыдущую версию, это можно сделать путем указания
даты флагом -D дата. Обратитесь к странице справочника cvs(1) за более
подробной информацией.
Хотя перед тем, как что-то делать, рекомендуется полностью прочесть страницу
справочника cvs(1), вот несколько
кратких примеров использования Anonymous CVS:
Пример A-1. Извлечение кода из -CURRENT (ls(1)) с последующим удалением:
% setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
% cvs login
At the prompt, enter the password ``anoncvs''.
% cvs co ls
% cvs release -d ls
% cvs logout
Пример A-2. Извлечение ls(1) из ветви для 3.X-STABLE:
% setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
% cvs login
At the prompt, enter the password ``anoncvs''.
% cvs co -rRELENG_3 ls
% cvs release -d ls
% cvs logout
Пример A-3. Создание списка изменений ls(1) (в виде unified diff)
% setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
% cvs login
At the prompt, enter the password ``anoncvs''.
% cvs rdiff -u -rRELENG_3_0_0_RELEASE -rRELENG_3_4_0_RELEASE ls
% cvs logout
Пример A-4. Поиск доступных имен модулей:
% setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
% cvs login
At the prompt, enter the password ``anoncvs''.
% cvs co modules
% more modules/modules
% cvs release -d modules
% cvs logout
В изучении CVS могут помочь следующие дополнительные ресурсы:
|
|