Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ci(1RCS) — UTek W2.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

co(1rcs)

ident(1rcs)

rlog(1rcs)

rcs(1rcs)

rcsdiff(1rcs)

rcsintro(1rcs)

rcsmerge(1rcs)

rcsfile(5rcs)



CI(1RCS)                COMMAND REFERENCE                CI(1RCS)



NAME
     ci - check in RCS revisions

SYNOPSIS
     ci [ -Nname ] [ -P ] [ -d[rev] ] [ -f[rev] ] [ -k[rev] ] [
     -l[rev] ] [ -mmsg ] [ -nname ] [ -q[rev] ] [ -r[rev] ] [
     -sstate ] [ -ttxtfilename ] [ -u[rev] ] filename ...

DESCRIPTION
     Ci stores new revisions into RCS files.  Each filename
     ending in ,v is considered an RCS file; all others are
     assumed to be working files containing new revisions.  Ci
     deposits the contents of each working file into the
     corresponding RCS file.

     Pairs of RCS files and working files may be specified in
     three ways (see also the EXAMPLES section of co(1rcs)):

     1) Both the RCS file and the working file are given. The RCS
     filename is of the form pathname1/workfilename,v and the
     working filename is of the form pathname2/workfilename,
     where pathname1/ and pathname2/ are (possibly different or
     empty) paths and workfilename is a filename.

     2) Only the RCS file is given.  Then the working file is
     assumed to be in the current directory and its name is
     derived from the name of the RCS file by removing pathname1/
     and the suffix ,v.

     3) Only the working file is given.  Then the name of the RCS
     file is derived from the name of the working file by
     removing pathname2/ and appending the suffix ,v.

     If the RCS file is omitted or specified without a path, then
     ci looks for the RCS file first in the directory ./RCS and
     then in the current directory.

     For ci to work, your login name must be on the access list,
     unless the access list is empty or you are the superuser or
     the owner of the file.  To append a new revision to an
     existing branch, the tip revision on that branch must be
     locked by the caller. Otherwise, only a new branch can be
     created. This restriction is not enforced for the owner of
     the file, unless locking is set to strict (see rcs(1rcs) ).
     A lock held by someone else may be broken with the rcs
     command and its options.

     If the revision to be deposited is not different from the
     preceding one, ci either aborts the deposit (if -q is given)
     or asks whether to abort (if -q is omitted). The current
     revision is unlocked in this case, unless the -d or -l flag
     is given. If the -u flag is given, the file is unlocked,



Printed 10/17/86                                                1





CI(1RCS)                COMMAND REFERENCE                CI(1RCS)



     removed, and checked out again.  A deposit can be forced
     with the -f option.

     For each revision deposited, ci prompts for a log message
     that summarizes the change.  You can enter the text editor
     to edit the log message by pressing <ESC>.  The environment
     variables RCSEDIT, EDITOR, and EDIT are checked in order to
     determine the text editor to invoke. If none of these are
     set, vi(1) is invoked.  When you finish entering the log
     message, enter a line containing only a single dot (.) or a
     <CTRL-D>.

     If several files are checked in, ci asks whether to reuse
     the previous log message.  If the standard input is not a
     terminal, ci suppresses the prompt and uses the same log
     message for all files.  See also -m.

     You can specify the number of the deposited revision with
     one of the options:  -r, -d, -f, -k, -l, -u, or -q (see -r).

     If the RCS file does not exist, ci creates it and deposits
     the contents of the working file as the initial revision
     (default number: 1.1).  The access list is initialized to
     empty.  Instead of the log message, ci requests descriptive
     text (see -t below).

     An RCS file created by ci inherits the read and execute
     permissions from the working file. If the RCS file exists
     already, ci preserves its read and execute permissions.  Ci
     always turns off all write permissions of RCS files.

OPTIONS
     -d[rev]
         If the revision has not changed and the checkin is
         aborted, this option causes the current revision to
         remain locked.

     -f[rev]
         Force a deposit. The new revision is deposited even it
         is not different from the preceding one.

     -k[rev]
         Searches the working file for keyword values to
         determine its revision number, creation date, author,
         and state (see co(1rcs)), and assigns these values to
         the deposited revision, rather than computing them.

         This option is often used for software distribution. A
         revision that is sent to several sites should be checked
         in with the -k option at these sites to preserve its
         original number, date, author, and state.




Printed 10/17/86                                                2





CI(1RCS)                COMMAND REFERENCE                CI(1RCS)



     -l[rev]
         Works like -r, except it performs an additional co -l
         for the deposited revision. Thus, the deposited revision
         is immediately checked out again and locked.  This is
         often used when you want to save a revision and continue
         editing it after the checkin.

     -mmsg
         Use msg as the log message for all revisions checked in.

     -nname
         Assign the symbolic name name to the checked-in
         revision.  Ci prints an error message if name is already
         assigned to another number.

     -q[rev]
         Quiet mode. Diagnostic output is not printed.  A
         revision that is the same as the preceding one is not
         deposited, unless -f is given.

     -r[rev]
         Assigns the revision number rev to the checked-in
         revision, releases the corresponding lock, and deletes
         the working file. This is the default.

         If rev is omitted, ci derives the new revision number
         from your last lock. If you locked the tip revision of a
         branch, the new revision is appended to that branch. The
         new revision number is obtained by incrementing the tip
         revision number.  If you locked a nontip revision, a new
         branch is started at that revision by incrementing the
         highest branch number at that revision.  The default
         initial branch and level numbers are 1.  If you don't
         hold a lock, but you are the owner of the file and
         locking is not set to strict, then the revision is
         appended to the trunk.

         If rev indicates a revision number, it must be higher
         than the latest one on the branch to which rev belongs,
         or must start a new branch.

         If rev indicates a branch instead of a revision, the new
         revision is appended to that branch. The level number is
         obtained by incrementing the tip revision number of that
         branch.  If rev indicates a nonexisting branch, that
         branch is created with the initial revision numbered
         rev.1.

         Exception: On the trunk, revisions can be appended to
         the end, but not inserted.

     -sstate



Printed 10/17/86                                                3





CI(1RCS)                COMMAND REFERENCE                CI(1RCS)



         Set the state of the checked-in revision to state.  The
         default is Exp.

     -t[txtfilename]
         Write descriptive text into the RCS file (deleting the
         existing text).  If txtfilename is omitted, ci prompts
         you for text supplied from the standard input,
         terminated with a line containing a single dot (.) or
         <CTRL-D>.  Otherwise, the descriptive text is copied
         from txtfilename.  During initialization, descriptive
         text is requested even if -t is not given.  The prompt
         is suppressed if standard input is not a terminal.

     -u[rev]
         Works like -l, except that the deposited revision is not
         locked.  This is often used when you want to use the
         revision immediately after checkin.

     -P  The access and modification dates of the RCS file (and
         the working file if the -l or -u option is given) are
         made the same as the original working file.  This option
         is supplied for special applications involving very
         large projects with many file dependencies but should
         generally not be used because of the problems that can
         occur.  See CAVEATS.

     -Nname
         Same as -n, except that it overrides a previous
         assignment of name.

EXAMPLES
     The following example checks the file example.c into the RCS
     file /usr/lib/RCS/example.c,v and leaves a copy of the file
     in the current directory. The file in the current directory
     will not be writeable:



          ci -u example.c /usr/lib/RCS/example.c,v


     If the current directory is /usr/lib or /usr/lib/RCS, the
     last argument may be ommitted without changing the result of
     the command.

FILES
     ,RCSt$$                  Temporary storage for checking in
                              the revision.

     ,*,                      Semaphore file. This file prevents
                              modifications to the working file
                              by other RCS programs while being



Printed 10/17/86                                                4





CI(1RCS)                COMMAND REFERENCE                CI(1RCS)



                              checked in.

DIAGNOSTICS
     For each revision, ci prints the RCS file, the working file,
     and the number of both the deposited and the preceding
     revision.

VARIABLES
     RCSLOCK        If set to nonstrict, all new RCS files will
                    have locking set to non-strict mode.
                    Otherwise, locking is strict.

     RCSEDIT        Checked for the name of a text editor to
                    invoke.

RETURN VALUE
     [NO_ERRS]      Command completed without error.

     [NP_ERR]       An error occurred that was not a system
                    error.  Execution terminated.

CAVEATS
     You must have read and write permission for the directories
     containing the RCS file and the working file, and read
     permission for the RCS file itself.

     A number of temporary files are created.  A semaphore file
     is created in the directory containing the RCS file.  Ci
     always creates a new RCS file and unlinks the old one.  This
     strategy makes links to RCS files useless.

     The maximum length of a log message is 2048 characters. The
     maximum length of a description is 2048. Longer messages are
     truncated.

     The maximum number of revisions that can be stored in a
     single RCS file is 719. When there are more than 700
     revisions in a file, a warning message is printed on the
     terminal (if possible) every time an RCS command works on
     the file. See rcsfile(5rcs) for information on what action
     to take in this case.  Ci does not allow the 720th revision
     to be checked in.

     On older versions of RCS, the maximum number of revisions
     that can be stored in a single RCS file is 239.  No warning
     message is displayed on the terminal if this number is
     exceeded.

     The -P option is supplied so that make does not think that a
     file has been changed just because it was checked in (see
     make(1)).  This causes make to do less work, but it can
     cause problems if the values of any of the RCS keyword



Printed 10/17/86                                                5





CI(1RCS)                COMMAND REFERENCE                CI(1RCS)



     values are used.  For example, if a revision logging system
     is used to store the version numbers of source files into
     the object code, these numbers may not be correct if the -P
     option is used.  It is best not to use this option, which is
     supplied for people building very large projects.

     Unless the -l option is used, the Locker keyword is not
     expanded.

SEE ALSO
     co(1rcs), ident(1rcs), rlog(1rcs), rcs(1rcs), rcsdiff(1rcs),
     rcsintro(1rcs), rcsmerge(1rcs), rcsfile(5rcs).











































Printed 10/17/86                                                6





































































%%index%%
na:72,63;
sy:135,522;
de:657,2558;3359,1691;
op:5050,917;6111,2472;8727,1563;
ex:10290,567;
fi:10857,352;11353,43;
di:11396,232;
va:11628,344;
rv:11972,244;
ca:12216,1573;13933,428;
se:14361,361;
%%index%%000000000229

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026