Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ rcs(1RCS) — UTek 3.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ci(1rcs)

co(1rcs)

ident(1rcs)

rlog(1rcs)

rcsdiff(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] ] .I 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 5/12/88                                                 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
        unlock it.  Somebody else unlocking a revision breaks the
        lock.  To break another user's lock, the rev must be



Printed 5/12/88                                                 2





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



        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.

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

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




Printed 5/12/88                                                 3





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



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),
     rcsintro(1rcs), rcsmerge(1rcs), and rcsfile(5rcs).










Printed 5/12/88                                                 4





































































%%index%%
na:288,84;
sy:372,827;
de:1199,913;
op:2112,1535;4007,3324;7691,1467;
ex:9158,299;
fi:9457,843;
di:10660,215;
va:10875,271;
rv:11146,382;
ca:11528,1379;
se:12907,357;
%%index%%000000000200

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