home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / rcstxi11.zip / rcstexi.110 / rcsmerge.tex < prev    next >
Text File  |  1997-03-30  |  11KB  |  331 lines

  1. @c
  2. @c ================================================================================
  3. @c                               Edition 1.1
  4. @c                      of the Texinfo-manuals for the
  5. @c                      (R)evision (C)ontrol (S)ystem
  6. @c                               Version 5.7
  7. @c
  8. @c                  (c) 1982, 1988, 1989 Walter F. Tichy.
  9. @c           (c) 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert.
  10. @c        (c) 1996, 1997 Karl Heinz Marbaise (doing converting job)
  11. @c ================================================================================
  12. @c
  13. @c Discription:
  14. @c    merging revisions.
  15. @c
  16. @c Authors:
  17. @c    Walter Tichy,
  18. @c    Paul Eggert,
  19. @c    Karl Heinz Marbaise (doing converting job)
  20. @c
  21. @c e-mail:
  22. @c    Internet: KHMarbaise@p69.ks.fido.de
  23. @c    Fido-net: 2:2452/117.69
  24. @c
  25. @c Bugs, question:
  26. @c    to above e-mail adress.
  27. @c
  28. @c License:
  29. @c    The "Texinfo Edition of the RCS V5.7 manuals" are free
  30. @c    software; you can redistribute it and/or modify it under
  31. @c    the terms of the GNU General Public License as published
  32. @c    by the Free Software Foundation; either version 2, or (at
  33. @c    your option) any later version.
  34. @c
  35. @c    The "Texinfo Edition of the RCS V5.7 manuals" are distributed
  36. @c    in the hope that they will be useful, but WITHOUT ANY WARRANTY;
  37. @c    without even the implied warranty of MERCHANTABILITY or
  38. @c    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
  39. @c    License for more details.
  40. @c
  41. @c    You should have received a copy of the GNU General Public License
  42. @c    along with the "Texinfo Edition of the RCS V5.7 manuals"; see the
  43. @c    file COPYING. If not, write to the:
  44. @c    Free Software Foundation,
  45. @c    59 Temple Place - Suite 330,
  46. @c    Boston, MA 02111-1307, USA.
  47. @c
  48. @c    See \rcstxi.110\COPYING for details.
  49. @c
  50. @c ================================================================================
  51. @c
  52. @c
  53. @c $Id: RCSMERGE.TEX 1.2 1997/03/30 22:53:17 KHM Exp $
  54. @c
  55. @c =============================================================================
  56. @c rcsmerge -- merge RCS versions
  57. @c -----------------------------------------------------------------------------
  58. @node rcsmerge,rlog,rcsdiff,Top
  59. @chapter rcsmerge -- merge RCS versions
  60. @cindex rcsmerge
  61. @cindex merge revisions
  62. @menu
  63. * rcsmergeIntro::    Introduction to @code{rcs}.
  64.  
  65. * rcsmergeOptions::  command line options of @code{rcs}.
  66. * rcsmergeExamples:: Examples of @code{rcsmerge}.
  67. * rcsmergeEnv::      The Environment which can change the
  68.                      behaviour of much of the RCS commands.
  69. * rcsmergeDiag::     Diagnostic output of @code{rcs}.
  70.  
  71. @end menu
  72. @c =============================================================================
  73. @c rcsmerge -- merge RCS versions
  74. @c     Description
  75. @c -----------------------------------------------------------------------------
  76. @node rcsmergeIntro,rcsmergeOptions,,rcsmerge
  77. @section Description
  78. rcsmerge incorporates the changes between two revisions of
  79. an RCS file into the corresponding working file.
  80.  
  81.  
  82. Pathnames matching an RCS suffix  denote  RCS  files;  all
  83. others   denote   working  files.   Names  are  paired  as
  84. explained in @ref{ciFiles}.
  85.  
  86. At least one revision must be specified with  one  of  the
  87. options  described  below,  usually @code{-r}.
  88. At most two revisions may be specified.  If only one
  89. revision  is  specified,  the latest revision on the
  90. default branch (normally the highest branch on the
  91. trunk) is assumed for the second revision.
  92. Revisions may be specified numerically or symbolically.
  93.  
  94. rcsmerge prints a  warning  if  there  are  overlaps,  and
  95. delimits the overlapping regions as explained in @ref{merge}.
  96. The command is useful for  incorporating  changes  into  a
  97. checked-out revision.
  98.  
  99.  
  100. @c =============================================================================
  101. @c rcsmerge -- merge RCS versions
  102. @c     Options
  103. @c -----------------------------------------------------------------------------
  104. @node rcsmergeOptions,rcsmergeExamples,rcsmergeIntro,rcsmerge
  105. @section Command line options of rcsmerge
  106. @ifinfo
  107. Overview off all options which can be given to @code{rcsmerge}
  108.  
  109. @code{Synopsis}: rcsmerge [options] file @dots{}
  110. @end ifinfo
  111. @menu
  112. * rcsmergeOptA::   -A Output conflicts the -A style.
  113. * rcsmergeOptE::   -E specify Conflict style
  114. * rcsmergeOptk::   -k Keyword substitution.
  115. * rcsmergeOptp::   -p send to stdout.
  116. * rcsmergeOptT::   -T Modification time.
  117. * rcsmergeOptV::   -V Version; Emulation of RCS Version.
  118. * rcsmergeOptx::   -x Suffixes.
  119. * rcsmergeOptz::   -z Time zone.
  120. @end menu
  121. @c =============================================================================
  122. @c rcsmerge -- merge RCS versions
  123. @c     Options
  124. @c         option -A
  125. @c -----------------------------------------------------------------------------
  126. @node rcsmergeOptA,rcsmergeOptE,rcsmergeOptions,rcsmergeOptions
  127. @subsection Output conflicts
  128. @cindex -A
  129. @cindex diff3
  130. @cindex diff
  131. @table @code
  132. @item -A
  133.  
  134. Output conflicts using the @code{-A} style of @code{diff3}, if
  135. supported by @code{diff3}.  This merges all changes  leading
  136. from  @file{file2} to @file{file3} into @file{file1}, and generates
  137. the most verbose output.
  138.  
  139. @end table
  140. @c =============================================================================
  141. @c rcsmerge -- merge RCS versions
  142. @c     Options
  143. @c         option -e -E
  144. @c -----------------------------------------------------------------------------
  145. @node rcsmergeOptE,rcsmergeOptk,rcsmergeOptA,rcsmergeOptions
  146. @subsection Less information
  147. @cindex -e
  148. @cindex -E
  149. @cindex conflict
  150. @table @code
  151. @item -E -e
  152.  
  153. These options specify conflict styles that generate
  154. less   information   than  @code{-A}.   See  @code{diff3}  for
  155. details.  The default is  @code{-E}. With  @code{-e},  @code{rcsmerge}
  156. does not warn about conflicts.
  157.  
  158. @end table
  159. @c =============================================================================
  160. @c rcsmerge -- merge RCS versions
  161. @c     Options
  162. @c         option -k
  163. @c -----------------------------------------------------------------------------
  164. @node rcsmergeOptk,rcsmergeOptp,rcsmergeOptE,rcsmergeOptions
  165. @subsection Keyword substitution
  166. @cindex -k
  167. @cindex Keyword
  168. @table @code
  169. @item -k@file{subst}
  170.  
  171. Use  @file{subst} style  keyword substitution.
  172. See @ref{coKeyword} for details.
  173. For example, @code{-kk -r1.1 -r1.2}  ignores
  174. differences  in  keyword  values  when  merging the
  175. changes from @code{1.1} to @code{1.2}.  It normally
  176. does not make sense  to  merge binary files as if
  177. they were text, so @code{rcsmerge} refuses to merge
  178. files if @code{-kb} expansion is used.
  179.  
  180.  
  181. @end table
  182. @c =============================================================================
  183. @c rcsmerge -- merge RCS versions
  184. @c     Options
  185. @c         option-p
  186. @c -----------------------------------------------------------------------------
  187. @node rcsmergeOptp,rcsmergeOptT,rcsmergeOptk,rcsmergeOptions
  188. @subsection Send to standard out
  189. @cindex -p
  190. @cindex Output
  191. @cindex send result to standard out.
  192. @table @code
  193. @item -p[@file{rev}]
  194.  
  195. Send the result to standard output instead of over-
  196. writing the working file.
  197.  
  198. @end table
  199. @c =============================================================================
  200. @c rcsmerge -- merge RCS versions
  201. @c     Options
  202. @c         option-T
  203. @c -----------------------------------------------------------------------------
  204. @node rcsmergeOptT,rcsmergeOptV,rcsmergeOptp,rcsmergeOptions
  205. @subsection Modification Time
  206. @cindex -T
  207. @cindex Modification Time
  208. @table @code
  209. @item -T
  210.  
  211. This option has no effect; it is present  for  compatibility
  212. with other RCS commands.
  213.  
  214. @end table
  215. @c =============================================================================
  216. @c rcsmerge -- merge RCS versions
  217. @c     Options
  218. @c         option-V
  219. @c -----------------------------------------------------------------------------
  220. @node rcsmergeOptV,rcsmergeOptx,rcsmergeOptT,rcsmergeOptions
  221. @subsection Version
  222. @cindex -V
  223. @cindex Version
  224. @cindex Emulation of RCS
  225. @table @code
  226. @item -V
  227.  
  228. Print RCS's version number.
  229.  
  230. @item -V@file{n}
  231.  
  232. Emulate RCS version @file{n}.  See @ref{coOptV} for details.
  233.  
  234. @end table
  235. @c =============================================================================
  236. @c rcsmerge -- merge RCS versions
  237. @c     Options
  238. @c         option-x
  239. @c -----------------------------------------------------------------------------
  240. @node rcsmergeOptx,rcsmergeOptz,rcsmergeOptV,rcsmergeOptions
  241. @subsection Suffixes
  242. @cindex -x
  243. @cindex Suffixes
  244. @table @code
  245. @item -x@file{suffixes}
  246.  
  247. Use @file{suffixes} to characterize RCS files. See @ref{ciOptx}.
  248.  
  249. @end table
  250. @c =============================================================================
  251. @c rcsmerge -- merge RCS versions
  252. @c     Options
  253. @c         option-z
  254. @c -----------------------------------------------------------------------------
  255. @node rcsmergeOptz,,rcsmergeOptx,rcsmergeOptions
  256. @subsection Time Zone
  257. @cindex -z
  258. @cindex Time Zone
  259. @table @code
  260. @item -z@file{zone}
  261.  
  262. Use @file{zone} as the time zone for keyword substitution.
  263. See @ref{coOptz} for details.
  264.  
  265. @end table
  266. @c =============================================================================
  267. @c rcsmerge -- merge RCS versions
  268. @c     Examples
  269. @c -----------------------------------------------------------------------------
  270. @node rcsmergeExamples,rcsmergeEnv,rcsmergeOptions,rcsmerge
  271. @subsection Examples
  272. @cindex Examples
  273.  
  274. Suppose  you  have  released  revision @code{2.8} of @file{f.c}.  Assume
  275. furthermore that after you complete an unreleased revision
  276. @code{3.4}, you receive updates to release @code{2.8} from someone else.
  277. To combine the updates to @code{2.8} and your changes between @code{2.8}
  278. and @code{3.4}, put the updates to @code{2.8} into file @file{f.c} and execute
  279.  
  280.  
  281. @example
  282. rcsmerge  -p  -r2.8  -r3.4  f.c  >f.merged.c
  283. @end example
  284.  
  285.  
  286. Then  examine  @file{f.merged.c}.   Alternatively, if you want to
  287. save the updates to @code{2.8} in the RCS file, check them in  as
  288. revision @code{2.8.1.1} and execute @code{co -j}:
  289.  
  290.  
  291. @example
  292. ci  -r2.8.1.1  f.c
  293. co  -r3.4  -j2.8:2.8.1.1  f.c
  294. @end example
  295.  
  296.  
  297. As  another  example,  the  following  command  undoes the
  298. changes between revision @code{2.4} and  @code{2.8}  in  your  currently
  299. checked out revision in @file{f.c}.
  300.  
  301.  
  302. @example
  303. rcsmerge  -r2.8  -r2.4  f.c
  304. @end example
  305.  
  306. Note  the  order  of  the  arguments, and that @file{f.c} will be
  307. overwritten.
  308.  
  309. @c =============================================================================
  310. @c rcsmerge -- merge RCS versions
  311. @c     Envrionment
  312. @c -----------------------------------------------------------------------------
  313. @node rcsmergeEnv,rcsmergeDiag,rcsmergeExamples,rcsmerge
  314. @section Environment
  315. @cindex Environment
  316. @table @code
  317. @item RCSINIT
  318. options prepended to the argument list, separated by spaces.
  319. See @ref{ciEnv} for details.
  320.  
  321. @end table
  322. @c =============================================================================
  323. @c rcsmerge -- merge RCS versions
  324. @c     Diagnostics
  325. @c -----------------------------------------------------------------------------
  326. @node rcsmergeDiag,,rcsmergeEnv,rcsmerge
  327. @section Diagnostics
  328. Exit  status  is 0 for no overlaps, 1 for some overlaps, 2
  329. for trouble.
  330.  
  331.