


RCS(1)                                                     RCS(1)


NNAAMMEE
       rcs - change RCS file attributes

SSYYNNOOPPSSIISS
       rrccss [ _o_p_t_i_o_n_s ] _f_i_l_e ...

DDEESSCCRRIIPPTTIIOONN
       rrccss  creates new RCS files or changes attributes of exist-
       ing ones.  An RCS  file  contains  multiple  revisions  of
       text,  an access list, a change log, descriptive text, and
       some control attributes.  For rrccss 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 --ii option is present.

       Pathnames  matching  an  RCS  suffix denote RCS files; all
       others  denote  working  files.   Names  are   paired   as
       explained  in  ccii(1).   Revision  numbers  use  the syntax
       described in ccii(1).

OOPPTTIIOONNSS
       --ii     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
              ..//RRCCSS, and then into the current directory.  If the
              RCS file already exists, print an error message.

       --aa_l_o_g_i_n_s
              Append the login  names  appearing  in  the  comma-
              separated list _l_o_g_i_n_s to the access list of the RCS
              file.

       --AA_o_l_d_f_i_l_e
              Append the access list of  _o_l_d_f_i_l_e  to  the  access
              list of the RCS file.

       --ee[_l_o_g_i_n_s]
              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
              access list.

       --bb[_r_e_v]
              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.

       --cc_s_t_r_i_n_g
              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 $$LLoogg$$ during checkout (see
              ccoo(1)).   This  is useful for programming languages
              without multi-line comments.  An initial ccii ,, or an
              rrccss --ii  without --cc, guesses the comment leader from



GNU                         1991/09/26                          1





RCS(1)                                                     RCS(1)


              the suffix of the working file.

       --kk_s_u_b_s_t
              Set the default keyword substitution to _s_u_b_s_t.  The
              effect  of  keyword  substitution  is  described in
              ccoo(1).  Giving an explicit --kk option to  ccoo,  rrccssdd--
              iiffff,  and  rrccssmmeerrggee overrides this default.  Beware
              rrccss --kkvv, because --kkvv is  incompatible  with  ccoo --ll.
              Use  rrccss --kkkkvv to restore the normal default keyword
              substitution.

       --ll[_r_e_v]
              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.  A lock is removed with ccii or rrccss --uu  (see
              below).

       --uu[_r_e_v]
              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  mes-
              sage  to  be sent to the original locker.  The mes-
              sage  contains  a  commentary  solicited  from  the
              breaker.   The  commentary is terminated by end-of-
              file or by a line containing .. by itself.

       --LL     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.

       --UU     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.

       --mm_r_e_v::_m_s_g
              Replace revision _r_e_v's log message with _m_s_g.

       --nn_n_a_m_e[::[_r_e_v]]
              Associate the symbolic name _n_a_m_e with the branch or
              revision  _r_e_v.   Delete the symbolic name if both ::
              and _r_e_v are omitted; otherwise, print an error mes-
              sage  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



GNU                         1991/09/26                          2





RCS(1)                                                     RCS(1)


              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,
              rrccss --nn_n_a_m_e:: RRCCSS//** associates _n_a_m_e with the  current
              latest  revision  of  all the named RCS files; this
              contrasts with rrccss --nn_n_a_m_e::$$ RRCCSS//** which  associates
              _n_a_m_e  with the revision numbers extracted from key-
              word strings in the corresponding working files.

       --NN_n_a_m_e[::[_r_e_v]]
              Act like --nn, except override any  previous  assign-
              ment of _n_a_m_e.

       --oo_r_a_n_g_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 revi-
              sions _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.

       --qq     Run quietly; do not print diagnostics.

       --II     Run  interactively,  even  if the standard input is
              not a terminal.

       --ss_s_t_a_t_e[::_r_e_v]
              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 lat-
              est 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 EExxpp (for experimental), SSttaabb (for
              stable), and RReell (for released).  By default, ccii(1)
              sets the state of a revision to EExxpp.

       --tt[_f_i_l_e]
              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 con-
              taining .. by itself.  Prompt for the text if inter-
              action  is  possible; see --II.  With --ii, descriptive
              text is obtained even if --tt is not given.

       --tt--_s_t_r_i_n_g
              Write descriptive text from the _s_t_r_i_n_g into the RCS
              file, deleting the existing text.



GNU                         1991/09/26                          3





RCS(1)                                                     RCS(1)


       --VV_n    Emulate RCS version _n.  See ccoo(1) for details.

       --xx_s_u_f_f_i_x_e_s
              Use  _s_u_f_f_i_x_e_s to characterize RCS files.  See ccii(1)
              for details.

CCOOMMPPAATTIIBBIILLIITTYY
       The --bb_r_e_v option generates an  RCS  file  that  cannot  be
       parsed by RCS version 3 or earlier.

       The  --kk_s_u_b_s_t  options  (except  --kkkkvv) generate an RCS file
       that cannot be parsed by RCS version 4 or earlier.

       Use rrccss --VV_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  --xx
       option, and requires a ,,vv suffix on an RCS pathname.

FFIILLEESS
       rrccss accesses files much as ccii(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  speci-
       fied.

EENNVVIIRROONNMMEENNTT
       RRCCSSIINNIITT
              options  prepended  to the argument list, separated
              by spaces.  See ccii(1) for details.

DDIIAAGGNNOOSSTTIICCSS
       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.

IIDDEENNTTIIFFIICCAATTIIOONN
       Author: Walter F. Tichy.
       Revision Number: 5.6; Release Date: 1991/09/26.
       Copyright (C) 1982, 1988, 1989 by Walter F. Tichy.
       Copyright (C) 1990, 1991 by Paul Eggert.

SSEEEE AALLSSOO
       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  1155,  7   (July   1985),
       637-654.

BBUUGGSS
       The separator for revision ranges in the --oo option used to
       be -- instead of ::, but this leads to confusion  when  sym-
       bolic names contain --.  For backwards compatibility rrccss --oo
       still supports the old -- separator,  but  it  warns  about



GNU                         1991/09/26                          4





RCS(1)                                                     RCS(1)


       this obsolete use.

       Symbolic  names  need  not  refer to existing revisions or
       branches.  For example, the --oo option does not remove sym-
       bolic names for the outdated revisions; you must use --nn to
       remove the names.



















































GNU                         1991/09/26                          5


