Deleted Added
full compact
1.\" Format this file with:
2.\" pic file | tbl | troff -ms
3.\"
4.\" \*s stands for $, and avoids problems when this file is checked in.
5.ds s $
6.\" PS and PE center pic diagrams. (The corresponding ms-macros may not.)
7.de PS
8.nr pE (\\n(.lu-\\$2u)/2u
9.in +\\n(pEu
10.ne \\$1u
11..
12.de PE
13.in -\\n(pEu
14..
15.de D(
16.DS
17.nr VS 12p
18.vs 12p
19.I
20..
21.de D)
22.DE
23.nr VS 18p
24.vs 18p
25.R
26..
27.de Id
28.ND \\$4
29..
30.Id $Id: rcs.ms,v 5.2 1991/01/03 10:57:28 eggert Exp $
31.RP
32.TL
33RCS\*-A System for Version Control
34.sp
35.AU
36Walter F. Tichy
37.AI
38Department of Computer Sciences

--- 248 unchanged lines hidden (view full) ---

287The marker
288.D(
289\*sLog\*s
290.D)
291has a similar function. It accumulates
292the log messages that are requested during check-in.
293Thus, one can maintain the complete history of a revision directly inside it,
294by enclosing it in a comment.
295Figure 1 is a partial reproduction of a log contained in revision 4.1 of
296the file \fIci.c\fR. The log appears at the beginning of the file,
297and makes it easy to determine what the recent modifications were.
298.sp
299.nr VS 12p
300.vs 12p
301.ne 18
302.nf
303.in +0.5i
304/* \*sLog: ci.c,v \*s
305 * Revision 4.1 1983/05/10 17:03:06 wft
306 * Added option \-d and \-w, and updated assignment of date, etc. to new delta.
307 * Added handling of default branches.
308 *
309 * Revision 3.9 1983/02/15 15:25:44 wft
310 * Added call to fastcopy() to copy remainder of RCS file.
311 *
312 * Revision 3.8 1983/01/14 15:34:05 wft
313 * Added ignoring of interrupts while new RCS file is renamed;
314 * avoids deletion of RCS files by interrupts.
315 *
316 * Revision 3.7 1982/12/10 16:09:20 wft
317 * Corrected checking of return code from diff.
318 * An RCS file now inherits its mode during the first ci from the working file,
319 * except that write permission is removed.
320 */
321.in 0
322.ce 1
323Figure 1. Log entries produced by the marker \*sLog\*s.
324.fi
325.nr VS 18p
326.vs 18p
327.sp 0
328.LP

--- 87 unchanged lines hidden (view full) ---

416.R
417This sequence of commands transforms the tree of Figure 2 into
418the one in Figure 3.
419Note that it may be necessary to incorporate the differences
420between 1.3 and 1.3.1.1
421into a revision at level 2. The operation \fIrcsmerge\fR automates this
422process (see the Appendix).
423.ne 7
424.PS 4i
425.ps -2
426 box "1.1"
427 arrow
428 box "1.2"
429 arrow
430R13: box "1.3"
431 arrow
432R21: box "2.1"

--- 22 unchanged lines hidden (view full) ---

455the customer's RCS file, and the customer
456can then merge the local modifications back into the new release.
457In the above example, a
458customer's RCS file would contain the following tree, assuming
459that the customer has received revision 1.3, added his local modifications
460as revision 1.3.1.1, then received revision 2.4, and merged
4612.4 and 1.3.1.1, resulting in 2.4.1.1.
462.ne 7
463.PS 4i
464.ps -2
465R13: box "1.3"
466 line invis
467R21: box invis
468 line invis
469R22: box invis
470 line invis
471R24: box "2.4"

--- 84 unchanged lines hidden (view full) ---

556RCS uses \fIforward\fR deltas for branches. Regenerating a revision
557on a side branch proceeds as follows. First, extract the latest revision
558on the trunk; secondly, apply reverse deltas until the fork revision for
559the branch is obtained; thirdly, apply forward deltas until the desired
560branch revision is reached. Figure 5 illustrates a tree with
561one side branch. Triangles pointing to the left and right represent
562reverse and forward deltas, respectively.
563.ne 8
564.PS 4i
565.ps -2
566define BD X [line invis $1 right .5;
567line up .3 then left .5 down .3 then right .5 down .3 then up .3] X
568
569define FD X [line invis $1 right .5;
570line left .5 down .3 then up .6 then right .5 down .3;] X
571
572right
573D11: BD(" 1.1")
574 arrow right from D11.e
575D12: BD(" 1.2")
576 arrow right from D12.e
577D13: BD(" 1.3")
578 arrow right from D13.e
579D21: BD(" 2.1")
580 arrow right from D21.e
581D22: box "2.2"
582 line invis down from D21.s
583F1: FD("1.3.1.1 ")
584 arrow from D13.se to F1.w
585 arrow from F1.e right
586 right
587F2: FD("1.3.1.2 ")
588.ps +2
589.PE
590.ce 1
591Figure 5. A revision tree with reverse and forward deltas.
592.sp 0
593.PP
594Although implementing fast check-out for the latest trunk revision,
595this arrangement has the disadvantage that generation of other revisions

--- 690 unchanged lines hidden (view full) ---

1286from any file and prints them.
1287.IP "\fIrcs\fP \fB\- change RCS file attributes\fP"
1288.sp 0
1289\fIRcs\fR is an administrative operation that changes access lists,
1290locks, unlocks, breaks locks, toggles the strict-locking feature,
1291sets state attributes and symbolic revision numbers, changes the
1292description, and deletes revisions. A revision can
1293only be deleted if it is not the fork of a side branch.
1294.IP "\fIrcsclean\fP \fB\- clean working directory\fP"
1295.sp 0
1296.ne 10
1297\fIRcsclean\fR removes working files that were checked out but never changed.*
1298.FS *
1299The \fIrcsclean\fP and \fIrcsfreeze\fP commands
1300are optional and are not always installed.
1301.FE
1302.IP "\fIrcsdiff\fP \fB\- compare revisions\fP"
1303.sp 0
1304\fIRcsdiff\fR compares two revisions and prints their

--- 220 unchanged lines hidden ---