Deleted Added
full compact
rcs.ms (9) rcs.ms (11891)
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 $
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..
6.de D(
7.DS
8.nr VS 12p
9.vs 12p
10.I
11..
12.de D)
13.DE
14.nr VS 18p
15.vs 18p
16.R
17..
18.de Id
19.ND \\$4
20..
30.Id $Id: rcs.ms,v 5.2 1991/01/03 10:57:28 eggert Exp $
21.Id $Id: rcs.ms,v 5.4 1995/06/01 16:23:43 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.
22.RP
23.TL
24RCS\*-A System for Version Control
25.sp
26.AU
27Walter F. Tichy
28.AI
29Department of Computer Sciences

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

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

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

409.R
410This sequence of commands transforms the tree of Figure 2 into
411the one in Figure 3.
412Note that it may be necessary to incorporate the differences
413between 1.3 and 1.3.1.1
414into a revision at level 2. The operation \fIrcsmerge\fR automates this
415process (see the Appendix).
416.ne 7
424.PS 4i
417.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
418.ps -2
419 box "1.1"
420 arrow
421 box "1.2"
422 arrow
423R13: box "1.3"
424 arrow
425R21: box "2.1"

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

448the customer's RCS file, and the customer
449can then merge the local modifications back into the new release.
450In the above example, a
451customer's RCS file would contain the following tree, assuming
452that the customer has received revision 1.3, added his local modifications
453as revision 1.3.1.1, then received revision 2.4, and merged
4542.4 and 1.3.1.1, resulting in 2.4.1.1.
455.ne 7
463.PS 4i
456.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
457.ps -2
458R13: box "1.3"
459 line invis
460R21: box invis
461 line invis
462R22: box invis
463 line invis
464R24: box "2.4"

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

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

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

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

--- 220 unchanged lines hidden ---