

RCS(1)                     Unix Programmer's Manual                     RCS(1)


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

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

DDDEEESSSCCCRRRIIIPPPTTTIIIOOONNN
     rrrcccsss 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  rrrcccss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i
     option is present.

     File names ending in ,,,vvv denote  RCS  files;  all  others  denote  working
     files.   If  a working file is given, rrrcccsss tries to find the corresponding
     RCS file first in an RCS subdirectory and  then  in  the  working  file's
     directory, as explained in cccooo(1).

OOOPPPTTTIIIOOONNNSSS

     ---i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RRCCCSSS, and then into  the  current  directory.
          If the RCS file already exists, print an error message.

     ---a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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e[logins]]]
          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b[rev]]]
          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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LLoooggg$$$ during
          checkout (see cccooo(1)).  This  is  useful  for  programming  languages
          without  multi-line comments.  An initial ccciii ,,, or an rrrcccsss\\\ ---iii without
          ---ccc, guesses the comment leader from the suffix of the working file.

     ---k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ccooo(1).  Giving an explicit ---kkk
          option to cccooo, rrrcccsssdddiiiffffff, and rrrcccsssmmmeeerrrgggeee overrides this default.   Beware
          rrrcccsss\\\ ---kkkvvv, because ---kkkvvv is incompatible with cccooo\\\ ---lll.  Use rrrcccsss\\\ ---kkkkkkvvv to
          restore the normal default keyword substitution.


                                    \*(Dt                                    1



RCS(1)                     Unix Programmer's Manual                     RCS(1)


     ---lll[rev]]]
          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cciii or rrrcccsss\\\ ---uuu (see below).

     ---uuu[rev]]]
          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.

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

     ---nnnnnnaaammmeee[:rev]
          Associate the symbolic name _n_a_m_e with the branch  or  revision  _r_e_v.
          Print  an  error  message if _n_a_m_e is already associated with another
          number.  If _r_e_v is omitted, the symbolic name is deleted.

     ---NNNnnnaaammmeee[:rev]
          Act like ---nnn, except override any previous assignment of _n_a_m_e.

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

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

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

     ---sssssstttaaattteee[:rev]
          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 EEExxxppp
          (for experimental), SSStttaaabbb (for stable), and RRReeelll (for  released).   By
          default, ccciii(1) sets the state of a revision to EEExxxppp.



                                    \*(Dt                                    2



RCS(1)                     Unix Programmer's Manual                     RCS(1)


     ---ttt[file]]]
          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 name 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 interaction is possible; see  ---III.   With  ---iii,
          descriptive text is obtained even if ---ttt is not given.

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

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

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

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

     Use rrrcccsss ---VVV_n to make an RCS file acceptable to RCS version _n by discarding
     information that would confuse version _n.

DDDIIIAAAGGGNNNOOOSSSTTTIIICCCSSS
     The RCS  file  name  and  the  revisions  outdated  are  written  to  the
     diagnostic output.  The exit status is zero if and only if all operations
     were successful.

FFFIIILLLEEESSS
     rrrcccsss accesses files much as ccciii(1) does, except that it does  not  need  to
     access the working file or its directory.

IIIDDDEEENNNTTTIIIFFFIIICCCAAATTTIIIOOONNN
     Author: Walter F. Tichy.
     Revision Number: 5.3; Release Date: 1990/12/04.
     Copyright (c) 1982, 1988, 1989 by Walter F. Tichy.
     Copyright (c) 1990 by Paul Eggert.

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














                                    \*(Dt                                    3

