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