rcsmerge.1 revision 296373
1.de Id
2.ds Rv \\$3
3.ds Dt \\$4
4..
5.Id $FreeBSD: releng/10.3/gnu/usr.bin/rcs/rcsmerge/rcsmerge.1 50472 1999-08-27 23:37:10Z peter $
6.ds r \&\s-1RCS\s0
7.if n .ds - \%--
8.if t .ds - \(em
9.TH RCSMERGE 1 \*(Dt GNU
10.SH NAME
11rcsmerge \- merge RCS revisions
12.SH SYNOPSIS
13.B rcsmerge
14.RI [ options ] " file"
15.SH DESCRIPTION
16.B rcsmerge
17incorporates the changes between two revisions
18of an \*r file into the corresponding working file.
19.PP
20Pathnames matching an \*r suffix denote \*r files;
21all others denote working files.
22Names are paired as explained in
23.BR ci (1).
24.PP
25At least one revision must be specified with one of the options
26described below, usually
27.BR \-r .
28At most two revisions may be specified.
29If only one revision is specified, the latest
30revision on the default branch (normally the highest branch on the trunk)
31is assumed for the second revision.
32Revisions may be specified numerically or symbolically.
33.PP
34.B rcsmerge
35prints a warning if there are overlaps, and delimits
36the overlapping regions as explained in
37.BR merge (1).
38The command is useful for incorporating changes into a checked-out revision.
39.SH OPTIONS
40.TP
41.B \-A
42Output conflicts using the
43.B \-A
44style of
45.BR diff3 (1),
46if supported by
47.BR diff3 .
48This merges all changes leading from
49.I file2
50to
51.I file3
52into
53.IR file1 ,
54and generates the most verbose output.
55.TP
56\f3\-E\fP, \f3\-e\fP
57These options specify conflict styles that generate less information
58than
59.BR \-A .
60See
61.BR diff3 (1)
62for details.
63The default is
64.BR \-E .
65With
66.BR \-e ,
67.B rcsmerge
68does not warn about conflicts.
69.TP
70.BI \-k subst
71Use
72.I subst
73style keyword substitution.
74See
75.BR co (1)
76for details.
77For example,
78.B "\-kk\ \-r1.1\ \-r1.2"
79ignores differences in keyword values when merging the changes from
80.B 1.1
81to
82.BR 1.2 .
83It normally does not make sense to merge binary files as if they were text, so
84.B rcsmerge
85refuses to merge files if
86.B \-kb
87expansion is used.
88.TP
89.BR \-p [\f2rev\fP]
90Send the result to standard output instead of overwriting the working file.
91.TP
92.BR \-q [\f2rev\fP]
93Run quietly; do not print diagnostics.
94.TP
95.BR \-r [\f2rev\fP]
96Merge with respect to revision
97.IR rev .
98Here an empty
99.I rev
100stands for the latest revision on the default branch, normally the head.
101.TP
102.B \-T
103This option has no effect;
104it is present for compatibility with other \*r commands.
105.TP
106.BI \-V
107Print \*r's version number.
108.TP
109.BI \-V n
110Emulate \*r version
111.IR n .
112See
113.BR co (1)
114for details.
115.TP
116.BI \-x "suffixes"
117Use
118.I suffixes
119to characterize \*r files.
120See
121.BR ci (1)
122for details.
123.TP
124.BI \-z zone
125Use
126.I zone
127as the time zone for keyword substitution.
128See
129.BR co (1)
130for details.
131.SH EXAMPLES
132Suppose you have released revision 2.8 of
133.BR f.c .
134Assume
135furthermore that after you complete an unreleased revision 3.4, you receive
136updates to release 2.8 from someone else.
137To combine the updates to 2.8 and your changes between 2.8 and 3.4,
138put the updates to 2.8 into file f.c and execute
139.LP
140.B "    rcsmerge  \-p  \-r2.8  \-r3.4  f.c  >f.merged.c"
141.PP
142Then examine
143.BR f.merged.c .
144Alternatively, if you want to save the updates to 2.8 in the \*r file,
145check them in as revision 2.8.1.1 and execute
146.BR "co \-j":
147.LP
148.B "    ci  \-r2.8.1.1  f.c"
149.br
150.B "    co  \-r3.4  \-j2.8:2.8.1.1  f.c"
151.PP
152As another example, the following command undoes the changes
153between revision 2.4 and 2.8 in your currently checked out revision
154in
155.BR f.c .
156.LP
157.B "    rcsmerge  \-r2.8  \-r2.4  f.c"
158.PP
159Note the order of the arguments, and that
160.B f.c
161will be
162overwritten.
163.SH ENVIRONMENT
164.TP
165.B \s-1RCSINIT\s0
166options prepended to the argument list, separated by spaces.
167See
168.BR ci (1)
169for details.
170.SH DIAGNOSTICS
171Exit status is 0 for no overlaps, 1 for some overlaps, 2 for trouble.
172.SH IDENTIFICATION
173Author: Walter F. Tichy.
174.br
175Manual Page Revision: \*(Rv; Release Date: \*(Dt.
176.br
177Copyright \(co 1982, 1988, 1989 Walter F. Tichy.
178.br
179Copyright \(co 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert.
180.SH "SEE ALSO"
181ci(1), co(1), ident(1), merge(1), rcs(1), rcsdiff(1), rcsintro(1), rlog(1),
182rcsfile(5)
183.br
184Walter F. Tichy,
185\*r\*-A System for Version Control,
186.I "Software\*-Practice & Experience"
187.BR 15 ,
1887 (July 1985), 637-654.
189.br
190