2005-01-14 05:28:38 +00:00
|
|
|
.TH CVS 1
|
|
|
|
.SH NAME
|
|
|
|
cvs \- introduction using plan9port CVS repository
|
|
|
|
.SH SYNOPSIS
|
|
|
|
.B cvs
|
|
|
|
.B -d
|
|
|
|
.B :pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs login
|
|
|
|
.PP
|
|
|
|
.B cvs
|
|
|
|
.B -d
|
|
|
|
.B :pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs checkout plan9
|
|
|
|
.PP
|
|
|
|
.B cvs
|
|
|
|
.B update
|
|
|
|
[
|
|
|
|
.B -dP
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.I path ...
|
|
|
|
]
|
|
|
|
.PP
|
|
|
|
.B cvs
|
|
|
|
.B status
|
|
|
|
[
|
|
|
|
.I path ...
|
|
|
|
]
|
|
|
|
.PP
|
|
|
|
.B cvs
|
|
|
|
.B diff
|
|
|
|
[
|
|
|
|
.B -D
|
|
|
|
.I date
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -r
|
|
|
|
.I revision
|
|
|
|
]
|
|
|
|
[
|
2005-01-14 22:23:44 +00:00
|
|
|
.B -cu
|
2005-01-14 05:28:38 +00:00
|
|
|
]
|
|
|
|
[
|
|
|
|
.I path ...
|
|
|
|
]
|
2005-01-18 06:02:09 +00:00
|
|
|
.PP
|
|
|
|
.B web
|
|
|
|
.B http://cvs.pdos.lcs.mit.edu/cvs/plan9/
|
2005-01-14 05:28:38 +00:00
|
|
|
.SH DESCRIPTION
|
|
|
|
The master source tree for Plan 9 from User Space is maintained
|
|
|
|
using the source control system CVS
|
|
|
|
as a poor substitute for Plan 9's
|
|
|
|
\fIreplica\fR(8) and dump file system.
|
|
|
|
.PP
|
|
|
|
The first argument to
|
|
|
|
.I cvs
|
|
|
|
is a command, which determines the form of the rest of the command line.
|
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.B login
|
|
|
|
command authenticates to the remote server and records your password in
|
|
|
|
.BR $HOME/.cvspass .
|
|
|
|
Use an empty password: when prompted, type a newline.
|
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.B checkout
|
|
|
|
command downloads a copy of the tree into the directory
|
|
|
|
.BR plan9 ,
|
|
|
|
which it will create.
|
|
|
|
The argument
|
|
|
|
.B plan9
|
|
|
|
is both the name of the created directory and the name used to
|
|
|
|
tell the server which tree you want.
|
|
|
|
If you want to use a different name locally, rename the directory
|
|
|
|
after running the command.
|
|
|
|
.PP
|
|
|
|
From directories within the
|
|
|
|
.B plan9
|
|
|
|
tree, the awkward
|
|
|
|
.B -d
|
|
|
|
is no longer necessary.
|
|
|
|
.PP
|
|
|
|
.I Cvs
|
|
|
|
.I update
|
|
|
|
incorporates recent changes from the CVS tree
|
|
|
|
into the local copy.
|
|
|
|
If the changes cannot be merged because of locally-made changes
|
|
|
|
that are in the way,
|
|
|
|
.I cvs
|
|
|
|
will leave a note in the file showing the differences between the local
|
|
|
|
and remote file.
|
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.B -d
|
|
|
|
flag to
|
|
|
|
.I cvs
|
|
|
|
.I update
|
|
|
|
causes
|
|
|
|
it to update subdirectories as well.
|
|
|
|
The
|
|
|
|
.B -P
|
|
|
|
flag causes
|
|
|
|
.I cvs
|
|
|
|
.I update
|
|
|
|
to remove directories that have been emptied.
|
|
|
|
.PP
|
|
|
|
.I Cvs
|
|
|
|
.I status
|
|
|
|
displays the version number (also called a revision number)
|
|
|
|
for the local copy of the named files,
|
|
|
|
as well as the number of the most recent version on the server.
|
|
|
|
Version numbers are of the form
|
|
|
|
.RI 1. n \fR,
|
|
|
|
where
|
|
|
|
.I n
|
|
|
|
is a sequence number starting at 1.
|
|
|
|
.PP
|
|
|
|
.I Cvs
|
|
|
|
.I diff
|
|
|
|
runs Unix's
|
|
|
|
.IR diff (1)
|
|
|
|
to compare files in the local tree with the corresponding files in
|
|
|
|
the CVS tree.
|
|
|
|
By default it compares against the version that was most recently
|
|
|
|
incorporated into the local tree.
|
|
|
|
The
|
|
|
|
.B -r
|
|
|
|
flag specifies an alternate version to compare against.
|
|
|
|
The special revision
|
|
|
|
.B HEAD
|
|
|
|
refers to the most recent version on the server.
|
|
|
|
The
|
|
|
|
.B -D
|
|
|
|
flag instructs
|
|
|
|
.I cvs
|
|
|
|
.I diff
|
|
|
|
to use the version as of the given date.
|
|
|
|
Almost any imaginable date format is acceptable:
|
|
|
|
.BR 20050110 ,
|
|
|
|
.BR 1/10/2005 ,
|
|
|
|
.B 'Jan
|
|
|
|
.BR 10' ,
|
|
|
|
.BR yesterday ,
|
|
|
|
.B 'last
|
|
|
|
.BR week ',
|
|
|
|
.B 'two
|
|
|
|
.B days
|
|
|
|
.BR ago' ,
|
|
|
|
.B 'a
|
|
|
|
.B fortnight
|
2005-01-14 22:21:40 +00:00
|
|
|
.BR ago' ,
|
2005-01-14 05:28:38 +00:00
|
|
|
and so on.
|
|
|
|
If two
|
|
|
|
.B -r
|
|
|
|
or
|
|
|
|
.B -D
|
|
|
|
options are given,
|
|
|
|
those two versions are compared, and the local copy is ignored.
|
|
|
|
.PP
|
2005-01-14 22:23:44 +00:00
|
|
|
.I Cvs
|
|
|
|
.I diff
|
|
|
|
passes the
|
|
|
|
.B -u
|
|
|
|
or
|
|
|
|
.B -c
|
|
|
|
options to the Unix
|
|
|
|
.IR diff .
|
|
|
|
.PP
|
2005-01-14 05:28:38 +00:00
|
|
|
If you download a tar file from the web
|
|
|
|
instead of checking out the tree with CVS,
|
|
|
|
you can still use the
|
|
|
|
.I update
|
|
|
|
and
|
|
|
|
.I diff
|
|
|
|
commands to stay up-to-date and to see what has changed.
|
|
|
|
You will need to run the
|
|
|
|
.I cvs
|
|
|
|
.I login
|
|
|
|
command first to create your
|
|
|
|
.B .cvspass
|
|
|
|
file.
|
2005-01-18 06:02:09 +00:00
|
|
|
.PP
|
|
|
|
The CVS tree can be inspected on the web at
|
|
|
|
.HR http://cvs.pdos.lcs.mit.edu/cvs/plan9/ "" .
|
2005-01-14 05:28:38 +00:00
|
|
|
.SH EXAMPLES
|
|
|
|
Incorporate any changes made to the CVS tree since
|
|
|
|
the last check out or update:
|
|
|
|
.IP
|
|
|
|
.EX
|
|
|
|
cd $PLAN9
|
|
|
|
cvs up -dP
|
|
|
|
.EE
|
|
|
|
.PP
|
|
|
|
Compare
|
2005-01-14 17:37:50 +00:00
|
|
|
.I libdraw
|
2005-01-14 05:28:38 +00:00
|
|
|
against its source from January 1, 2005:
|
|
|
|
.IP
|
|
|
|
.EX
|
|
|
|
cd $PLAN9/src/libdraw
|
|
|
|
cvs diff -D20050101
|
|
|
|
.EE
|
|
|
|
.PP
|
|
|
|
Check the entire tree for changes made locally:
|
|
|
|
.IP
|
|
|
|
.EX
|
|
|
|
cd $PLAN9
|
|
|
|
cvs diff
|
|
|
|
.EE
|
|
|
|
.PP
|
|
|
|
Check the entire tree for changes between the local version and
|
|
|
|
the most recent in the CVS tree.
|
|
|
|
This does not indicate which changes are local ones
|
|
|
|
and which are changes to the CVS tree that have not yet been
|
|
|
|
incorporated into the local tree.
|
|
|
|
.IP
|
|
|
|
.EX
|
|
|
|
cd $PLAN9
|
|
|
|
cvs diff -r HEAD
|
|
|
|
.EE
|
2005-03-18 21:59:32 +00:00
|
|
|
.PP
|
|
|
|
Make
|
|
|
|
.I cvs
|
|
|
|
less chatty by setting the global
|
|
|
|
.B -q
|
|
|
|
flag implicitly on every CVS command:
|
|
|
|
.EX
|
|
|
|
cd $HOME
|
|
|
|
echo 'cvs -q' > .cvsrc
|
|
|
|
.EE
|
2005-01-14 05:28:38 +00:00
|
|
|
.SH FILES
|
|
|
|
.TP
|
|
|
|
.B CVS
|
|
|
|
directory containing CVS metadata for parent
|
|
|
|
.TP
|
|
|
|
.B .cvsignore
|
|
|
|
list of files and wildcards to exclude from CVS operations in this directory
|
|
|
|
.SH SEE ALSO
|
|
|
|
Unix's
|
2005-01-14 20:12:19 +00:00
|
|
|
\fIcvs\fR(1),
|
2005-01-18 06:02:09 +00:00
|
|
|
.HR http://www.cvshome.org/
|
|
|
|
.PP
|
|
|
|
.HR http://cvs.pdos.lcs.mit.edu/cvs/plan9/
|
2005-01-14 05:28:38 +00:00
|
|
|
.SH BUGS
|
|
|
|
The CVS server is a read-only public copy of a private tree.
|
|
|
|
The dates on versions reflect the date the changes were made in the
|
|
|
|
private tree, not the date the change was made public.
|
2005-01-14 17:43:41 +00:00
|
|
|
.PP
|
|
|
|
On Mac OS X,
|
|
|
|
.I cvs
|
|
|
|
will complain during a checkout that some files in
|
|
|
|
.B $PLAN9/troff/font/devutf
|
|
|
|
are ``in the way.''
|
|
|
|
This is due to the Mac case-insensitive file system
|
2006-02-14 19:39:11 +00:00
|
|
|
and the fact that troff has some (rarely used)
|
2005-01-16 21:30:01 +00:00
|
|
|
files whose names differ only in case.
|