


RCS(1)                   USER COMMANDS                     RCS(1)



NAME
     rcs - change RCS file attributes

SYNOPSIS
     rcs [ _o_p_t_i_o_n_s ] _f_i_l_e ...

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  con-
     trol  attributes.   For rcs 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 option is present.

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

OPTIONS
     -i   Create and initialize a new RCS file, but do not  depo-
          sit  any revision.  If the RCS file has no path prefix,
          try to place it first into the subdirectory ./RCS,  and
          then  into  the  current  directory.   If  the RCS file
          already exists, print an error message.

     -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_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[_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[_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_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 $Log$ during checkout (see co(1)).  This is
          useful  for  programming  languages  without multi-line
          comments.  An initial ci , or  an  rcs -i  without  -c,



GNU                  Last change: 1990/12/04                    1






RCS(1)                   USER COMMANDS                     RCS(1)



          guesses the comment leader from the suffix of the work-
          ing file.

     -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 co(1).
          Giving an  explicit  -k  option  to  co,  rcsdiff,  and
          rcsmerge   overrides  this  default.   Beware  rcs -kv,
          because -kv is incompatible with co -l.   Use  rcs -kkv
          to restore the normal default keyword substitution.

     -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 ci or rcs -u (see below).

     -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 message to be sent to the
          original locker.  The  message  contains  a  commentary
          solicited  from  the  breaker.   The commentary is ter-
          minated by end-of-file or by  a  line  containing  . by
          itself.

     -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   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 nor-
          mally strict.

     -n_n_a_m_e[:_r_e_v]
          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_a_m_e[:_r_e_v]
          Act like -n, except override any previous assignment of
          _n_a_m_e.




GNU                  Last change: 1990/12/04                    2






RCS(1)                   USER COMMANDS                     RCS(1)



     -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   Run quietly; do not print diagnostics.

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

     -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 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  Exp
          (for  experimental),  Stab  (for  stable), and Rel (for
          released).  By default, ci(1) sets the state of a revi-
          sion to Exp.

     -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 name may not begin with -.  If _f_i_l_e  is  omit-
          ted, 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.
          With -i, descriptive text is obtained even if -t is not
          given.

     -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_n  Emulate RCS version _n.  See co(1) for details.

COMPATIBILITY
     The -b_r_e_v option generates an RCS file that cannot be parsed
     by RCS version 3 or earlier.

     The -k_s_u_b_s_t options (except -kkv) generate an RCS file  that
     cannot be parsed by RCS version 4 or earlier.

     Use rcs -V_n to make an RCS file acceptable to RCS version  _n
     by discarding information that would confuse version _n.



GNU                  Last change: 1990/12/04                    3






RCS(1)                   USER COMMANDS                     RCS(1)



DIAGNOSTICS
     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.

FILES
     rcs accesses files much as ci(1) does, except that  it  does
     not need to access the working file or its directory.

IDENTIFICATION
     Author: Walter F. Tichy.
     Revision Number: 5.3; Release Date: 1990/12/04.
     Copyright 8c9 1982, 1988, 1989 by Walter F. Tichy.
     Copyright 8c9 1990 by Paul Eggert.

SEE ALSO
     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 15, 7 (July 1985), 637-654.



































GNU                  Last change: 1990/12/04                    4



