|
|
1.1 root 1: .TH CI 1 6/29/83 "Purdue University"
2: .SH NAME
3: ci \- check in RCS revisions
4: .SH SYNOPSIS
5: .B ci
6: [ options ]
7: file ...
8: .SH DESCRIPTION
9: .I Ci
10: stores new revisions into RCS files.
11: Each file name ending in `,v' is taken to be an RCS file, all others
12: are assumed to be working files containing new revisions.
13: \fICi\fR deposits the contents of each working file
14: into the corresponding RCS file.
15: .PP
16: Pairs of RCS files and working files may be specified in 3 ways (see also the
17: example section of \fIco\fR (1)).
18: .PP
19: 1) Both the RCS file and the working file are given. The RCS file name is of
20: the form \fIpath1/workfile\fR,v
21: and the working file name is of the form
22: \fIpath2/workfile\fR, where
23: \fIpath1/\fR and
24: \fIpath2/\fR are (possibly different or empty) paths and
25: \fIworkfile\fR is a file name.
26: .PP
27: 2) Only the RCS file is given.
28: Then the working file is assumed to be in the current
29: directory and its name is derived from the name of the RCS file
30: by removing \fIpath1/\fR and the suffix `,v'.
31: .PP
32: 3) Only the working file is given.
33: Then the name of the RCS file is derived from the name of the working file
34: by removing \fIpath2/\fR
35: and appending the suffix `,v'.
36: .PP
37: If the RCS file is omitted or specified without a path, then \fIci\fR
38: looks for the RCS file first in the directory ./RCS and then in the current
39: directory.
40: .PP
41: For \fIci\fR to work, the caller's login must be on the access list,
42: except if the access list is empty or the caller is the superuser or the
43: owner of the file.
44: To append a new revision to an existing branch, the tip revision on
45: that branch must be locked by the caller. Otherwise, only a
46: new branch can be created. This restriction is not enforced
47: for the owner of the file, unless locking is set to \fIstrict\fR
48: (see \fIrcs\fR (1)).
49: A lock held by someone else may be broken with the \fIrcs\fR command.
50: .PP
51: Normally, \fIci\fR checks whether the revision to be deposited is different
52: from the preceding one. If it is not different, \fIci\fR
53: either aborts the deposit (if \fB-q\fR is given) or asks whether to abort
54: (if \fB-q\fR is omitted). A deposit can be forced with the \fB-f\fR option.
55: .PP
56: For each revision deposited, \fIci\fR prompts for a log message.
57: The log message should summarize the change and must be terminated with
58: a line containing a single `.' or a control-D.
59: If several files are checked in, \fIci\fR asks whether to reuse the
60: previous log message.
61: If the std. input is not a terminal, \fIci\fR suppresses the prompt
62: and uses the same log message for all files.
63: See also \fB-m\fR.
64: .PP
65: The number of the deposited revision can be given by any of the options
66: \fB-r\fR, \fB-f\fR, \fB-k\fR, \fB-l\fR, \fB-u\fR, or \fB-q\fR (see \fB-r\fR).
67: .PP
68: If the RCS file does not exist, \fIci\fR creates it and
69: deposits the contents of the working file as the initial revision
70: (default number: 1.1).
71: The access list is initialized to empty.
72: Instead of the log message, \fIci\fR requests descriptive text (see
73: \fB-t\fR below).
74: .TP 10
75: .B \-r\fR[\fIrev\fR]
76: assigns the revision number \fIrev\fR
77: to the checked-in revision, releases the corresponding lock, and
78: deletes the working file. This is also the default.
79:
80: If \fIrev\fR is omitted, \fIci\fR derives the new revision number from
81: the caller's last lock. If the caller has locked the tip revision of a branch,
82: the new revision is appended to that branch. The new revision number is obtained
83: by incrementing the tip revision number.
84: If the caller locked a non-tip revision, a new branch is started at
85: that revision by incrementing the highest branch number at that revision.
86: The default initial branch and level numbers are 1.
87: If the caller holds no lock, but he is the owner of the file and locking
88: is not set to \fIstrict\fR, then the revision is appended to the trunk.
89:
90: If \fIrev\fR indicates a revision number, it must be higher than the latest
91: one on the branch to which \fIrev\fR belongs, or must start a new branch.
92:
93: If \fIrev\fR indicates a branch instead of a revision,
94: the new revision is appended to that branch. The level number is obtained
95: by incrementing the tip revision number of that branch.
96: If \fIrev\fR indicates a non-existing branch,
97: that branch is created with the initial revision numbered \fIrev.1\fR.
98:
99: Exception: On the trunk, revisions can be appended to the end, but
100: not inserted.
101: .TP 10
102: .B \-f\fR[\fIrev\fR]
103: forces a deposit; the new revision is deposited even it is not different
104: from the preceding one.
105: .TP 10
106: .B \-k\fR[\fIrev\fR]
107: searches the working file for keyword values to determine its revision number,
108: creation date, author, and state (see \fIco\fR (1)), and assigns these
109: values to the deposited revision, rather than computing them locally.
110: A revision number given by a command option overrides the number
111: in the working file.
112: This option is useful for software distribution. A revision that is sent to
113: several sites should be checked in with the \fB-k\fR option at these sites to
114: preserve its original number, date, author, and state.
115: .TP 10
116: .B \-l\fR[\fIrev\fR]
117: works like \fB-r\fR, except it performs an additional \fIco -l\fR for the
118: deposited revision. Thus, the deposited revision is immediately
119: checked out again and locked.
120: This is useful for saving a revision although one wants to continue
121: editing it after the checkin.
122: .TP 10
123: .B \-u\fR[\fIrev\fR]
124: works like \fB-l\fR, except that the deposited revision is not locked.
125: This is useful if one wants to process (e.g., compile) the revision
126: immediately after checkin.
127: .TP 10
128: .B \-q\fR[\fIrev\fR]
129: quiet mode; diagnostic output is not printed.
130: A revision that is not different from the preceding one is not deposited,
131: unless \fB-f\fR is given.
132: .TP 10
133: .BI \-m "msg"
134: uses the string \fImsg\fR as the log message for all revisions checked in.
135: .TP 10
136: .BI \-n "name"
137: assigns the symbolic name \fIname\fR to the number of the checked-in revision.
138: \fICi\fR prints an error message if \fIname\fR is already assigned to another
139: number.
140: .TP 10
141: .BI \-N "name"
142: same as \fB-n\fR, except that it overrides a previous assignment of \fIname\fR.
143: .TP
144: .BI \-s "state"
145: sets the state of the checked-in revision to the identifier \fIstate\fR.
146: The default is \fIExp\fR.
147: .TP
148: .B \-t\fR[\fItxtfile\fR]
149: writes descriptive text into the RCS file (deletes the existing text).
150: If \fItxtfile\fR is omitted,
151: \fIci\fR prompts the user for text supplied from the std. input,
152: terminated with a line containing a single `.' or control-D.
153: Otherwise, the descriptive text is copied from the file \fItxtfile\fR.
154: During initialization, descriptive text is requested
155: even if \fB-t\fR is not given.
156: The prompt is suppressed if std. input is not a terminal.
157: .SH DIAGNOSTICS
158: For each revision,
159: \fIci\fR prints the RCS file, the working file, and the number
160: of both the deposited and the preceding revision.
161: The exit status always refers to the last file checked in,
162: and is 0 if the operation was successful, 1 otherwise.
163: .SH "FILE MODES"
164: An RCS file created by \fIci\fR inherits the read and execute permissions
165: from the working file. If the RCS file exists already, \fIci\fR
166: preserves its read and execute permissions.
167: \fICi\fR always turns off all write permissions of RCS files.
168: .SH FILES
169: The caller of the command
170: must have read/write permission for the directories containing
171: the RCS file and the working file, and read permission for the RCS file itself.
172: A number of temporary files are created.
173: A semaphore file is created in the directory containing the RCS file.
174: \fICi\fR always creates a new RCS file and unlinks the old one.
175: This strategy makes links to RCS files useless.
176: .SH IDENTIFICATION
177: .de VL
178: \\$2
179: ..
180: Author: Walter F. Tichy,
181: Purdue University, West Lafayette, IN, 47907.
182: .sp 0
183: Revision Number:
184: .VL $Revision: 3.1 $
185: ; Release Date:
186: .VL $Date: 83/04/04 15:52:35 $
187: \&.
188: .sp 0
189: Copyright \(co 1982 by Walter F. Tichy.
190: .SH SEE ALSO
191: co (1), ident(1), rcs (1), rcsdiff (1), rcsintro (1), rcsmerge (1), rlog (1), rcsfile (5), sccstorcs (8).
192: .sp 0
193: Walter F. Tichy, "Design, Implementation, and Evaluation of a Revision Control
194: System," in \fIProceedings of the 6th International Conference on Software
195: Engineering\fR, IEEE, Tokyo, Sept. 1982.
196: .SH BUGS
197:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.