Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ci(1rcs)

co(1rcs)

ident(1rcs)

rlog(1rcs)

rcsdiff(1rcs)

RCS(1RCS)

rcsintro(1rcs)

rcsmerge(1rcs)

rcsfile(5rcs)



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



NAME
     rcs - change RCS file attributes

SYNOPSIS
     rcs [ -Aoldfilename ] [ -L ] [ -Nname[:rev] ] [ -P ] [ -U ]
     [ -alogins ] [ -cstring ] [ -elogins ] [ -i ] [ -lrev ]
     [ -nname[:rev] ] [ -orange ] [ -q ] [ -sstate[:rev] ]
     [ -ttxtfilename ] [ -u[rev] ] filename ...

DESCRIPTION
     Rcs creates new RCS files or changes attributes of existing
     ones.  An RCS file contains multiple revisions of text, an
     access list, a change log, descriptive text, and some
     control attributes.  For rcs to work, your login name must
     be on the access list.  This doesn't apply if the access
     list is empty, you are the owner of the file or the
     superuser, or the -i option is present.

     Files ending in ,v are RCS files; all others are working
     files. If a working file is given, rcs tries to find the
     corresponding RCS file first in directory ./RCS and then in
     the current directory, as explained in co(1rcs).

OPTIONS
     -alogins
         Appends the login names appearing in the comma-separated
         list logins to the access list of the RCS file.

     -cstring
         Sets the comment leader to string. The comment leader is
         printed before every log message line generated by the
         keyword $Log$ during checkout (see co). This is useful
         for programming languages without multi-line comments.
         During rcs -i or initial ci, the comment leader is
         guessed from the suffix of the working file.

     -e[logins]
         Erases the login names appearing in the comma-separated
         list logins from the access list of the RCS file.  If
         logins is omitted, the entire access list is erased.

     -i  Creates and initializes a new RCS file, but does not
         deposit any revision.  If the RCS file has no path
         prefix, rcs tries to place it first into the
         subdirectory ./RCS, and then into the current directory.
         If the RCS file already exists, an error message is
         printed.

         You are prompted to enter descriptive text as described
         in ci(1rcs).

     -l[rev]



Printed 10/17/86                                                1





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



         Locks the revision with number rev.  If a branch is
         given, the latest revision on that branch is locked.  If
         rev is omitted, the latest revision on the trunk is
         locked.  Locking prevents overlapping changes.  A lock
         is removed with ci or rcs -u (see below).

     -nname[:rev]
         Associates the symbolic name name with the branch or
         revision rev.  Rcs prints an error message if name is
         already associated with another number.  If rev is
         omitted, the symbolic name is deleted.

     -orange
         Deletes (outdates) the revisions given by range.  A
         range consisting of a single revision number means that
         revision.  A range consisting of a branch number means
         the latest revision on that branch.  A range of the form
         rev1-rev2 means revisions rev1 to rev2 on the same
         branch.  -rev means from the beginning of the branch
         containing rev up to and including rev. And rev- means
         from revision rev to the end of the branch containing
         rev.  None of the outdated revisions may have branches
         or locks.

     -q  Quiet mode. Diagnostics are not printed.

     -sstate[:rev]
         Sets the state attribute of the revision rev to state.
         If rev is omitted, the latest revision on the trunk is
         assumed; If rev is a branch number, the latest revision
         on that branch is assumed.  Any identifier is acceptable
         for state.  A useful set of states is Exp (for
         experimental), Stab (for stable), and Rel (for
         released).  By default, ci sets the state of a revision
         to Exp.

     -t[txtfilename]
         Writes descriptive text into the RCS file (deletes the
         existing text).  If txtfilename is omitted, rcs 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 the file txtfilename.  If the -i option is present,
         descriptive text is requested even if -t is not given.
         The prompt is suppressed if the standard input is not a
         terminal.

     -u[rev]
         Unlocks the revision with number rev.  If a branch is
         given, the latest revision on that branch is unlocked.
         If rev is omitted, the latest lock held by the caller is
         removed.  Normally, only the locker of a revision may



Printed 10/17/86                                                2





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



         unlock it.  Somebody else unlocking a revision breaks
         the lock.  To break another user's lock, the rev must be
         specified.  This causes a mail message to be sent to the
         original locker.  The message contains a commentary
         solicited from the breaker.  The commentary is
         terminated with a line containing a single dot (.) or
         <CTRL-D>.

     -Aoldfilename
         Appends the access list of oldfilename to the access
         list of the RCS file.

     -L  Sets locking to strict. Strict locking means that the
         owner of an RCS file is not exempt from locking for
         checkin.  This option should be used for files that are
         shared.

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

     -P  Causes the access and modification dates of the RCS file
         to stay the same before and after modification, unless
         the current revision was outdated. See CAVEATS.

     -U  Sets locking to nonstrict. Nonstrict locking means that
         the owner of a file need not lock a revision for
         checkin.  This option should NOT be used for files that
         are shared.  The default is strict locking, but this may
         be changed by setting the environment variable RCSLOCK
         to nonstrict.

EXAMPLES
     The following example unlocks the current revision of the
     file example.c if it is locked (if it is not locked, a
     message to that effect is printed):



          rcs -u example.c


FILES
     The caller of the command must have read/write permission
     for the directory containing the RCS file and read
     permission for the RCS file itself.  Rcs creates a semaphore
     file in the same directory as the RCS file to prevent
     simultaneous update.  For changes, rcs always creates a new
     file. On successful completion, rcs deletes the old one and
     renames the new one.  This strategy makes links to RCS files
     useless.




Printed 10/17/86                                                3





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



     ,RCSt$$                  Temporary storage for data during
                              changes.  $$ is the current process
                              id.

     ,*,                      The semaphore file. This file
                              prevents other rcs updates to the
                              file.

DIAGNOSTICS
     The RCS filename and the revisions outdated are written to
     the diagnostic output.

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

RETURN VALUE
     [NO_ERRS]      Command completed without error.

     [USAGE]        Incorrect command line syntax. Execution
                    terminated.

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

CAVEATS
     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 the manual page for rcsfile(5rcs) for
     information on what action to take in this case.

     The maximum length of a description message (see -i) is 2048
     characters. Longer messages are truncated.

     On older versions of RCS, the maximum number of revisions
     that can be stored in a single RCS file is 239.  No warning
     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 the administrative
     information was modified.  This causes make to do less work,
     but it can cause problems if the values of any of the RCS
     keyword 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.

SEE ALSO
     ci(1rcs), co(1rcs), ident(1rcs), rlog(1rcs), rcsdiff(1rcs),



Printed 10/17/86                                                4





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



     rcsintro(1rcs), rcsmerge(1rcs), rcsfile(5rcs).






















































Printed 10/17/86                                                5



%%index%%
na:72,68;
sy:140,663;
de:803,825;
op:1628,1445;3217,3073;6434,1566;
ex:8000,269;
fi:8269,545;8958,358;
di:9316,171;
va:9487,235;
rv:9722,338;
ca:10060,1295;
se:11355,196;11695,173;
%%index%%000000000214

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