Для того, чтобы выполнить команду CVS в сетевом репозитории
с помощью сервера парольной аутентификации, нужно задать
протокол pserver
, имя пользователя, машину, на которой
находится репозиторий, и путь к репозиторию. Например:
cvs -d :pserver:bach@faun.example.org:/usr/local/cvsroot checkout someproj
или
CVSROOT=:pserver:bach@faun.example.org:/usr/local/cvsroot cvs checkout someproj
Однако, если только вы не работаете с публичным репозиторием (то
есть таким, где имя определённого пользователя не требует
использования пароля), вам сначала потребуется войти в
систему. При входе в систему проверяется ваш пароль. Это
происходит при выполнении команды login
, которая
спрашивает у вас пароль:
cvs -d :pserver:bach@faun.example.org:/usr/local/cvsroot login CVS password: _
После того, как вы ввели пароль, CVS проверяет этот пароль
на сервере. Если результат положителен, то комбинация имени
пользователя, машины, пути к репозиторию и пароля сохраняются в
специальном файле, чтобы при дальнейшей работе с этим
репозиторием от вас не требовалось запускать cvs login
.
(Если результат проверки отрицателен, CVS пожалуется, что
пароль неверен, и, естественно, он не будет сохранен.)
Пароли обычно хранятся в файле `$HOME/.cvspass'. Этот файл можно прочитать глазами, и, до какой-то степени, можно отредактировать руками. Заметьте, впрочем, что пароли не хранятся в совсем открытом виде: они тривиально закодированы, чтобы защититься от нечаянного подсматривания (например, системным администратором или кем-либо другим, не настроенным враждебно).
Изменить место расположения этого файла можно, установив
переменную окружения CVS_PASSFILE
. При использовании этой
переменной не забудьте установить её перед использованием
cvs login
. Если вы этого не сделаете, то последующие
команды CVS не смогут найти паролей для отправки на сервер.
После того, как вы вошли в систему, все команды CVS, использующие этот сетевой репозиторий и имя пользователя, смогут аутентифицироваться, используя этот сохранённый пароль. Поэтому, например:
cvs -d :pserver:bach@faun.example.org:/usr/local/cvsroot checkout foo
будет работать без дополнительных вопросов (если только пароль не
изменится на сервере, в этому случае вам нужно ещё раз выполнить
cvs login
).
Заметьте, что если забыть про `:pserver:' в имени
репозитория, то CVS будет считать, что вы собираетесь
использовать rsh
(see section Соединение с помощью rsh
).
Конечно же, после того, как вы извлекли рабочую копию, то можно не задавать имя репозитория при работе с ней, потому что CVS может и сама взять это имя из каталога `CVS/'.
Пароль к определённому сетевому репозиторию можно удалить из
файла паролей с помощью команды cvs logout
.
Go to the first, previous, next, last section, table of contents.