| |
|
Domain Registration -
Domain registration & domain search service from just
$5.95/year only |
|
|
|
Webhosting Service -
Webhosting service for single or multiple domain names at affordable price. |
|
|
Back to Index
|
A.3.1 Introduction
Anonymous CVS (or, as it is otherwise known, anoncvs) is a feature provided by the CVS utilities bundled
with FreeBSD for synchronizing with a remote CVS repository. Among other things, it
allows users of FreeBSD to perform, with no special privileges, read-only CVS operations
against one of the FreeBSD project's official anoncvs servers. To use it, one simply sets
the CVSROOT environment variable to point at the appropriate
anoncvs server, provides the well-known password ``anoncvs'' with the cvs login command, and then uses the cvs(1) command to
access it like any local repository.
Note: The cvs login command, stores the passwords that
are used for authenticating to the CVS server in a file called .cvspass in your HOME directory. If this
file does not exist, you might get an error when trying to use cvs
login for the first time. Just make an empty .cvspass
file, and retry to login.
While it can also be said that the CVSup and anoncvs services both perform essentially
the same function, there are various trade-offs which can influence the user's choice of
synchronization methods. In a nutshell, CVSup is much more
efficient in its usage of network resources and is by far the most technically
sophisticated of the two, but at a price. To use CVSup, a
special client must first be installed and configured before any bits can be grabbed, and
then only in the fairly large chunks which CVSup calls collections.
Anoncvs, by contrast, can be used to examine anything from
an individual file to a specific program (like ls or grep) by referencing the CVS module name. Of course, anoncvs is also only good for read-only operations on the CVS
repository, so if it is your intention to support local development in one repository
shared with the FreeBSD project bits then CVSup is really your
only option.
A.3.2 Using Anonymous CVS
Configuring cvs(1) to use an
Anonymous CVS repository is a simple matter of setting the CVSROOT
environment variable to point to one of the FreeBSD project's anoncvs servers. At the time of this writing, the following
servers are available:
-
USA:
:pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs (Use cvs login
and enter the password ``anoncvs'' when prompted.)
-
Germany:
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs (Use cvs
login and enter the password ``anoncvs'' when prompted.)
-
Germany:
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs (rsh, pserver, ssh, ssh/2022)
-
Japan:
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (Use cvs
login and enter the password ``anoncvs'' when prompted.)
-
Austria:
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs (Use cvs
login and enter any password when prompted.)
-
France:
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (pserver (password ``anoncvs''), ssh
(no password))
Since CVS allows one to ``check out'' virtually any version of the FreeBSD sources
that ever existed (or, in some cases, will exist), you need to be familiar with the
revision (-r) flag to cvs(1) and what some
of the permissible values for it in the FreeBSD Project repository are.
There are two kinds of tags, revision tags and branch tags. A revision tag refers to a
specific revision. Its meaning stays the same from day to day. A branch tag, on the other
hand, refers to the latest revision on a given line of development, at any given time.
Because a branch tag does not refer to a specific revision, it may mean something
different tomorrow than it means today.
Section A.6 contains revision tags that users might be
interested in. Again, none of these are valid for the ports collection since the ports
collection does not have multiple revisions.
When you specify a branch tag, you normally receive the latest versions of the files
on that line of development. If you wish to receive some past version, you can do so by
specifying a date with the -D date flag. See the cvs(1) manual page for
more details.
While it really is recommended that you read the manual page for cvs(1) thoroughly
before doing anything, here are some quick examples which essentially show how to use
Anonymous CVS:
Example A-1. Checking Out Something from -CURRENT (ls(1)) and Deleting It Again:
% 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
Example A-2. Checking Out the Version of ls(1) in the 3.X-STABLE Branch:
% 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
Example A-3. Creating a List of Changes (as Unified Diffs) to ls(1)
% 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
Example A-4. Finding Out What Other Module Names Can Be Used:
% 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
The following additional resources may be helpful in learning CVS:
-
CVS Tutorial from Cal Poly.
-
CVS Home, the CVS development and
support community.
-
CVSweb is the
FreeBSD Project web interface for CVS.
|
|
|
|
© 2002-2004 Active-Venture.com
Website Hosting
Service
|
| |
|
Disclaimer: This
documentation is provided only for the benefits of our website hosting customers.
For authoritative source of the documentation, please refer to http://www.freebsd.org
|
|
|