rcs - change RCS file attributes
rrccss [ _o_p_t_i_o_n_s ] _f_i_l_e ...
rrccss 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 rrccss to work, the caller's
login name must be on the access list, except if the
access list is empty, the caller is the owner of the file
or the superuser, or the --ii option is present.
Pathnames matching an RCS suffix denote RCS files; all
others denote working files. Names are paired as
explained in ccii(1). Revision numbers use the syntax
described in ccii(1).
--ii Create and initialize a new RCS file, but do not
deposit any revision. If the RCS file has no path
prefix, try to place it first into the subdirectory
..//RRCCSS, and then into the current directory. If the
RCS file already exists, print an error message.
Append the login names appearing in the comma-
separated list _l_o_g_i_n_s to the access list of the RCS
Append the access list of _o_l_d_f_i_l_e to the access
list of the RCS file.
Erase the login names appearing in the comma-
separated list _l_o_g_i_n_s from the access list of the
RCS file. If _l_o_g_i_n_s is omitted, erase the entire
Set the default branch to _r_e_v. If _r_e_v is omitted,
the default branch is reset to the (dynamically)
highest branch on the trunk.
sets the comment leader to _s_t_r_i_n_g. The comment
leader is printed before every log message line
generated by the keyword $$LLoogg$$ during checkout (see
ccoo(1)). This is useful for programming languages
without multi-line comments. An initial ccii ,, or an
rrccss --ii without --cc, guesses the comment leader from
GNU 1992/07/28 1
the suffix of the working file.
Set the default keyword substitution to _s_u_b_s_t. The
effect of keyword substitution is described in
ccoo(1). Giving an explicit --kk option to ccoo,
rrccssddiiffff, and rrccssmmeerrggee overrides this default.
Beware rrccss --kkvv, because --kkvv is incompatible with
ccoo --ll. Use rrccss --kkkkvv to restore the normal default
Lock the revision with number _r_e_v. If a branch is
given, lock the latest revision on that branch. If
_r_e_v is omitted, lock the latest revision on the
default branch. Locking prevents overlapping
changes. If someone else already holds the lock,
the lock is broken as with rrccss --uu (see below).
Unlock the revision with number _r_e_v. If a branch
is given, unlock the latest revision on that
branch. If _r_e_v is omitted, remove the latest lock
held by the caller. Normally, only the locker of a
revision may unlock it. Somebody else unlocking a
revision breaks the lock. 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 by end-of-
file or by a line containing .. by itself.
--LL Set locking to _s_t_r_i_c_t. 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.
--UU Set locking to non-strict. Non-strict locking
means that the owner of a file need not lock a
revision for checkin. This option should _n_o_t be
used for files that are shared. Whether default
locking is strict is determined by your system
administrator, but it is normally strict.
Replace revision _r_e_v's log message with _m_s_g.
--MM Do not send mail when breaking somebody else's
lock. This option is not meant for casual use; it
is meant for programs that warn users by other
means, and invoke rrccss --uu only as a low-level lock-
Associate the symbolic name _n_a_m_e with the branch or
GNU 1992/07/28 2
revision _r_e_v. Delete the symbolic name if both ::
and _r_e_v are omitted; otherwise, print an error
message if _n_a_m_e is already associated with another
number. If _r_e_v is symbolic, it is expanded before
association. A _r_e_v consisting of a branch number
followed by a .. stands for the current latest
revision in the branch. A :: with an empty _r_e_v
stands for the current latest revision on the
default branch, normally the trunk. For example,
rrccss --nn_n_a_m_e:: RRCCSS//** associates _n_a_m_e with the current
latest revision of all the named RCS files; this
contrasts with rrccss --nn_n_a_m_e::$$ RRCCSS//** which associates
_n_a_m_e with the revision numbers extracted from
keyword strings in the corresponding working files.
Act like --nn, except override any previous
assignment of _n_a_m_e.
deletes (``outdates'') the revisions given by
_r_a_n_g_e. 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 _r_e_v_1::_r_e_v_2 means
revisions _r_e_v_1 to _r_e_v_2 on the same branch, ::_r_e_v
means from the beginning of the branch containing
_r_e_v up to and including _r_e_v, and _r_e_v:: means from
revision _r_e_v to the end of the branch containing
_r_e_v. None of the outdated revisions may have
branches or locks.
--qq Run quietly; do not print diagnostics.
--II Run interactively, even if the standard input is
not a terminal.
Set the state attribute of the revision _r_e_v to
_s_t_a_t_e. If _r_e_v is a branch number, assume the
latest revision on that branch. If _r_e_v is omitted,
assume the latest revision on the default branch.
Any identifier is acceptable for _s_t_a_t_e. A useful
set of states is EExxpp (for experimental), SSttaabb (for
stable), and RReell (for released). By default, ccii(1)
sets the state of a revision to EExxpp.
Write descriptive text from the contents of the
named _f_i_l_e into the RCS file, deleting the existing
text. The _f_i_l_e pathname may not begin with --. If
_f_i_l_e is omitted, obtain the text from standard
input, terminated by end-of-file or by a line
containing .. by itself. Prompt for the text if
GNU 1992/07/28 3
interaction is possible; see --II. With --ii,
descriptive text is obtained even if --tt is not
Write descriptive text from the _s_t_r_i_n_g into the RCS
file, deleting the existing text.
--TT Preserve the modification time on the RCS file
unless a revision is removed. This option can
suppress extensive recompilation caused by a
mmaakkee(1) dependency of some copy of the working file
on the RCS file. Use this option with care; it can
suppress recompilation even when it is needed, i.e.
when a change to the RCS file would mean a change
to keyword strings in the working file.
--VV Print s version number.
--VV_n Emulate RCS version _n. See ccoo(1) for details.
Use _s_u_f_f_i_x_e_s to characterize RCS files. See ccii(1)
The --bb_r_e_v option generates an RCS file that cannot be
parsed by RCS version 3 or earlier.
The --kk_s_u_b_s_t options (except --kkkkvv) generate an RCS file
that cannot be parsed by RCS version 4 or earlier.
Use rrccss --VV_n to make an RCS file acceptable to RCS version
_n by discarding information that would confuse version _n.
RCS version 5.5 and earlier does not support the --xx
option, and requires a ,,vv suffix on an RCS pathname.
rrccss accesses files much as ccii(1) does, except that it uses
the effective user for all accesses, it does not write the
working file or its directory, and it does not even read
the working file unless a revision number of $$ is
options prepended to the argument list, separated
by spaces. See ccii(1) for details.
The RCS pathname and the revisions outdated are written to
the diagnostic output. The exit status is zero if and
only if all operations were successful.
GNU 1992/07/28 4
Author: Walter F. Tichy.
Revision Number: 5.9; Release Date: 1992/07/28.
Copyright 1982, 1988, 1989 by Walter F. Tichy.
Copyright 1990, 1991, 1992 by Paul Eggert.
co(1), ci(1), ident(1), rcsdiff(1), rcsintro(1),
rcsmerge(1), rlog(1), rcsfile(5)
Walter F. Tichy, RCS--A System for Version Control,
_S_o_f_t_w_a_r_e_-_-_P_r_a_c_t_i_c_e _& _E_x_p_e_r_i_e_n_c_e 1155, 7 (July 1985),
The separator for revision ranges in the --oo option used to
be -- instead of ::, but this leads to confusion when
symbolic names contain --. For backwards compatibility rrccss
--oo still supports the old -- separator, but it warns about
this obsolete use.
Symbolic names need not refer to existing revisions or
branches. For example, the --oo option does not remove
symbolic names for the outdated revisions; you must use --nn
to remove the names.
GNU 1992/07/28 5