blob: 029f3edd2bf202c340c260026e47bed40d7f5e01 [file] [log] [blame]
rsc67075c32005-01-14 05:28:38 +00001.TH CVS 1
2.SH NAME
3cvs \- introduction using plan9port CVS repository
4.SH SYNOPSIS
5.B cvs
6.B -d
Russ Coxd944f762007-11-04 20:30:18 -05007.B :pserver:anoncvs@cvs.pdos.csail.mit.edu:/cvs login
rsc67075c32005-01-14 05:28:38 +00008.PP
9.B cvs
10.B -d
Russ Coxd944f762007-11-04 20:30:18 -050011.B :pserver:anoncvs@cvs.pdos.csail.mit.edu:/cvs checkout plan9
rsc67075c32005-01-14 05:28:38 +000012.PP
13.B cvs
14.B update
15[
16.B -dP
17]
18[
19.I path ...
20]
21.PP
22.B cvs
23.B status
24[
25.I path ...
26]
27.PP
28.B cvs
29.B diff
30[
31.B -D
32.I date
33]
34[
35.B -r
36.I revision
37]
38[
rscb7f251f2005-01-14 22:23:44 +000039.B -cu
rsc67075c32005-01-14 05:28:38 +000040]
41[
42.I path ...
43]
rsc8ce709a2005-01-18 06:02:09 +000044.PP
45.B web
Russ Coxd944f762007-11-04 20:30:18 -050046.B http://cvs.pdos.csail.mit.edu/cvs/plan9/
rsc67075c32005-01-14 05:28:38 +000047.SH DESCRIPTION
48The master source tree for Plan 9 from User Space is maintained
49using the source control system CVS
50as a poor substitute for Plan 9's
51\fIreplica\fR(8) and dump file system.
Russ Coxd944f762007-11-04 20:30:18 -050052(It is maintained simultaneously using Mercurial; see
53.IR hg (1).)
rsc67075c32005-01-14 05:28:38 +000054.PP
55The first argument to
56.I cvs
57is a command, which determines the form of the rest of the command line.
58.PP
59The
60.B login
61command authenticates to the remote server and records your password in
62.BR $HOME/.cvspass .
63Use an empty password: when prompted, type a newline.
64.PP
65The
66.B checkout
67command downloads a copy of the tree into the directory
68.BR plan9 ,
69which it will create.
70The argument
71.B plan9
72is both the name of the created directory and the name used to
73tell the server which tree you want.
74If you want to use a different name locally, rename the directory
75after running the command.
76.PP
77From directories within the
78.B plan9
79tree, the awkward
80.B -d
81is no longer necessary.
82.PP
83.I Cvs
84.I update
85incorporates recent changes from the CVS tree
86into the local copy.
87If the changes cannot be merged because of locally-made changes
88that are in the way,
89.I cvs
90will leave a note in the file showing the differences between the local
91and remote file.
92.PP
93The
94.B -d
95flag to
96.I cvs
97.I update
98causes
99it to update subdirectories as well.
100The
101.B -P
102flag causes
103.I cvs
104.I update
105to remove directories that have been emptied.
106.PP
107.I Cvs
108.I status
109displays the version number (also called a revision number)
110for the local copy of the named files,
111as well as the number of the most recent version on the server.
112Version numbers are of the form
113.RI 1. n \fR,
114where
115.I n
116is a sequence number starting at 1.
117.PP
118.I Cvs
119.I diff
120runs Unix's
121.IR diff (1)
122to compare files in the local tree with the corresponding files in
123the CVS tree.
124By default it compares against the version that was most recently
125incorporated into the local tree.
126The
127.B -r
128flag specifies an alternate version to compare against.
129The special revision
130.B HEAD
131refers to the most recent version on the server.
132The
133.B -D
134flag instructs
135.I cvs
136.I diff
137to use the version as of the given date.
138Almost any imaginable date format is acceptable:
139.BR 20050110 ,
140.BR 1/10/2005 ,
141.B 'Jan
142.BR 10' ,
143.BR yesterday ,
144.B 'last
145.BR week ',
146.B 'two
147.B days
148.BR ago' ,
149.B 'a
150.B fortnight
rscc2304712005-01-14 22:21:40 +0000151.BR ago' ,
rsc67075c32005-01-14 05:28:38 +0000152and so on.
153If two
154.B -r
155or
156.B -D
157options are given,
158those two versions are compared, and the local copy is ignored.
159.PP
rscb7f251f2005-01-14 22:23:44 +0000160.I Cvs
161.I diff
162passes the
163.B -u
164or
165.B -c
166options to the Unix
167.IR diff .
168.PP
rsc67075c32005-01-14 05:28:38 +0000169If you download a tar file from the web
170instead of checking out the tree with CVS,
171you can still use the
172.I update
173and
174.I diff
175commands to stay up-to-date and to see what has changed.
176You will need to run the
177.I cvs
178.I login
179command first to create your
180.B .cvspass
181file.
rsc8ce709a2005-01-18 06:02:09 +0000182.PP
183The CVS tree can be inspected on the web at
Russ Coxd944f762007-11-04 20:30:18 -0500184.HR http://cvs.pdos.csail.mit.edu/cvs/plan9/ "" .
rsc67075c32005-01-14 05:28:38 +0000185.SH EXAMPLES
186Incorporate any changes made to the CVS tree since
187the last check out or update:
188.IP
189.EX
190cd $PLAN9
191cvs up -dP
192.EE
193.PP
194Compare
rscadc93f62005-01-14 17:37:50 +0000195.I libdraw
rsc67075c32005-01-14 05:28:38 +0000196against its source from January 1, 2005:
197.IP
198.EX
199cd $PLAN9/src/libdraw
200cvs diff -D20050101
201.EE
202.PP
203Check the entire tree for changes made locally:
204.IP
205.EX
206cd $PLAN9
207cvs diff
208.EE
209.PP
210Check the entire tree for changes between the local version and
211the most recent in the CVS tree.
212This does not indicate which changes are local ones
213and which are changes to the CVS tree that have not yet been
214incorporated into the local tree.
215.IP
216.EX
217cd $PLAN9
218cvs diff -r HEAD
219.EE
rsc41971252005-03-18 21:59:32 +0000220.PP
221Make
222.I cvs
223less chatty by setting the global
224.B -q
225flag implicitly on every CVS command:
226.EX
227cd $HOME
228echo 'cvs -q' > .cvsrc
229.EE
rsc67075c32005-01-14 05:28:38 +0000230.SH FILES
231.TP
232.B CVS
233directory containing CVS metadata for parent
234.TP
235.B .cvsignore
236list of files and wildcards to exclude from CVS operations in this directory
237.SH SEE ALSO
Russ Coxd944f762007-11-04 20:30:18 -0500238.IR hg (1)
239.PP
rsc67075c32005-01-14 05:28:38 +0000240Unix's
rsc638f5c02005-01-14 20:12:19 +0000241\fIcvs\fR(1),
rsc8ce709a2005-01-18 06:02:09 +0000242.HR http://www.cvshome.org/
243.PP
Russ Coxd944f762007-11-04 20:30:18 -0500244.HR http://cvs.pdos.csail.mit.edu/cvs/plan9/
rsc67075c32005-01-14 05:28:38 +0000245.SH BUGS
246The CVS server is a read-only public copy of a private tree.
247The dates on versions reflect the date the changes were made in the
248private tree, not the date the change was made public.
rsc1574caa2005-01-14 17:43:41 +0000249.PP
250On Mac OS X,
251.I cvs
252will complain during a checkout that some files in
253.B $PLAN9/troff/font/devutf
254are ``in the way.''
255This is due to the Mac case-insensitive file system
rsca79e8ab2006-02-14 19:39:11 +0000256and the fact that troff has some (rarely used)
rscfe1a0272005-01-16 21:30:01 +0000257files whose names differ only in case.