rccs.1 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. .\" $Id$
  2. .de DS
  3. . sp .5
  4. . nf
  5. . in +4
  6. . ft CW
  7. . vs -1
  8. ..
  9. .de DE
  10. . sp .5
  11. . fi
  12. . in
  13. . ft
  14. . vs
  15. ..
  16. .TH RCCS 1 "Nov, 1995" "lm@sgi.com" "Programmers tools"
  17. .SH NAME
  18. rccs \- apply RCS commands to sets of files
  19. .SH SYNOPSIS
  20. .B rccs
  21. command
  22. [ options ]
  23. [
  24. .I filename
  25. and/or
  26. .I directory
  27. \&.\|.\|.
  28. ]
  29. .SH DESCRIPTION
  30. .LP
  31. .B rccs
  32. is a perl script that tries to emulate the Berkeley \fBSCCS\fP program
  33. for \fBRCS\fP. If your fingers know how to type commands to \fBSCCS\fP,
  34. just do the same thing to \fBrccs\fP.
  35. .LP
  36. A subset of the \fBSCCS\fP commands are implemented, the ones that I use.
  37. Some new commands have been added. It is easy to add more commands, see
  38. the \fIExample\fP routine at the bottom of \fBrccs\fP to see how.
  39. .LP
  40. This interface does not require a list of files/directories for most
  41. commands; the implied list is *,v and/or RCS/*,v. Destructive commands,
  42. such as clean -f, unedit, unget, do \fBnot\fP have an implied list. In
  43. other words, \f(CBrccs diffs\fP is the same as \f(CBrccs diffs RCS\fP
  44. but \f(CBrccs unedit\fP is not the same as \f(CBrccs unedit RCS\fP.
  45. .SH COMMANDS
  46. .IP options 8
  47. Note that RCS options are typically passed through to RCS. The options
  48. that made sense to SCCS commands are translated to RCS options.
  49. .IP "ci" 10
  50. Alias for delta. Checks in files.
  51. .IP "clean [-e] [-f] [-d|y'message'] [files]"
  52. Without any arguments, this command removes all files that are read only
  53. and have an associated RCS file.
  54. With the -e argument, clean removes files that have been checked out
  55. writable but have not been modified.
  56. The -d|y|m option may be combined with -e to check in the set of files that
  57. have been modified.
  58. With the -f option, clean removes all working files, \fBincluding\fP files
  59. that have been modified since the check out. Be careful.
  60. .IP co
  61. Alias for get. Checks out files.
  62. .IP "create [-y|d'message'] [-g] files"
  63. Initial check in of files to the RCS system. The files are then checked out
  64. readonly unless the -g option is present.
  65. The -y or -d options may be used to set the descriptive text message.
  66. Differs from SCCS in that the
  67. original files are not preserved.
  68. .IP deledit
  69. Alias for delta followed by a get -e.
  70. .IP delget
  71. Alias for delta followed by a get.
  72. .IP "delta [-y|d'message'] [-q] [files]"
  73. Check in a delta of the file. -q is changed to RCS' -s and means to be
  74. quiet about hwat is happening. -y'message' or -d'message' or -m'message'
  75. all get sent through to RCS as the check in message. No other arguments
  76. are translated.
  77. .IP "diffs [-C|c] [-r<rev>] [-sdiff] [files]"
  78. Shows changes between the working files and the RCS file. Note that the
  79. files do not need to be checked out, only writable. -C or -c means do a
  80. context diff. -sdiff means do a side by side diff. The sdiff option will
  81. figure out your screen width if it knows how - see the source to make this
  82. work on your system.
  83. .IP edit
  84. Alias for get -e.
  85. .IP enter
  86. Alias for create -g.
  87. .IP fix
  88. Useful if you just checked in the file and then realized you forgot
  89. something. The fix command will remove the top delta from the history
  90. and leave you with an editable working file with the top delta as the
  91. contents.
  92. .IP "get [-e] [-p] [-k] [-s] [files]"
  93. Get, or check out, the file. Without any options, get just gets the
  94. latest revision of the RCS file in the working file.
  95. With -e, check out the file writable. With -p, send the file to stdout.
  96. With -k, supress expansion of key words. With -s, be quiet about what
  97. is happening.
  98. .IP help
  99. Get a brief help screen of information.
  100. .IP "history [files]"
  101. Print the RCS history (my format) of the specified files.
  102. .IP "info [files]"
  103. Print the list of files being edited.
  104. .IP print
  105. Alias for a loop that prints the history of each file followed by the
  106. contents of the file.
  107. .IP prs
  108. Alias for history.
  109. .IP prt
  110. Alias for history.
  111. .IP unedit
  112. Alias for clean -f.
  113. .IP unget
  114. Alias for clean -f.
  115. .SH GLOBAL OPTIONS
  116. .IP -debug 10
  117. Turn on debugging. Used when debugging \fBrccs\fP itself.
  118. .IP -verbose
  119. Be more verbose about what is happening.
  120. .SH EXAMPLES
  121. To start off, add a bunch of files to RCS:
  122. .DS
  123. rccs create -y'my program name' myprog.c myprog.h
  124. .DE
  125. Now let's edit them all:
  126. .DS
  127. rccs get -e
  128. .DE
  129. If we didn't change anything, the following gives us a clean directory:
  130. .DS
  131. rccs clean -e
  132. .DE
  133. If we changed myprog.h, the following gives us a clean directory after
  134. checking in myprog.h:
  135. .DS
  136. rccs clean -e -d'some message'
  137. .DE
  138. If we want to see what we changed:
  139. .DS
  140. rccs diffs
  141. .DE
  142. .SH "SEE ALSO"
  143. .BR "RCS commands" ,
  144. .BR "SCCS commands" ,
  145. .BR sdiff (1),
  146. .BR perl (1).
  147. .SH TODO
  148. It would be nice to implement a \fB-i\fP option that prompted before each
  149. action, especially the destructive ones.