unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (HP-UX-11.11)
Page:
Section:
Apropos / Subsearch:
optional field



 rcs(1)								      rcs(1)




 NAME
      rcs - change RCS file attributes

 SYNOPSIS
      rcs [options] file ...

 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,
      the user's login name must be on the access list, except if the access
      list is empty, if the user is the owner of the file or the superuser,
      or if the -i option is present.

      The user 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.

      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, then in the current directory, as explained
      in rcsintro(5).

    Options
      rcs recognizes the following options:

	   -alogins	  Appends the login names appearing in the comma-
			  separated list logins to the access list of the
			  RCS file.

	   -Aoldfile	  Appends the access list of oldfile to the access
			  list of the RCS file.

	   -c "string"	  Sets the comment leader to string.  The comment
			  leader is printed before every log message line
			  generated by the keyword $Log$ during check out
			  (see co(1)).	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.	Note, a
			  comment leader is inserted at the beginning of
			  each line of log information.	 The comment leader
			  is determined by the suffix used with the file
			  name, as in foo.c, or foo.sh, or foo.p.  Note you
			  can specify a different comment leader through the
			  "rcs" command.  The following table shows the
			  comment leader associated with each file name
			  suffix:



 Hewlett-Packard Company	    - 1 -   HP-UX Release 11i: November 2000






 rcs(1)								      rcs(1)




		      SUFFIX   FILES		Comment Character
		      ___________________________________________
		      c	       c		       '*'
		      C	       C Header		       '*'
		      sh       shell		       '#'
		      s	       Assembly		       '#'
		      p	       pascal		       '*'
		      r	       ratfor		       '#'
		      e	       efl		       '#'
		      l	       lex		       '*'
		      y	       yacc		       '*'
		      yr       yacc-rarfor	       '*'
		      ye       yacc-efl		       '*'
		      ml       mocklisp		       ';'
		      mac      macro		       ';'
		      f	       fortran		       'c'
		      ms       ms-macros	       '\'
		      me       me-macros	       '\'
		      ""       empty suffix	       '#'
		      nil      unknown suffix	      '""'

	   -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, then into the
		current directory.  If the RCS file already exists, an error
		message is printed.

	   -l[rev]
		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).

	   -L	Sets locking to strict.	 Strict locking means that the owner
		of an RCS file is not exempt from locking for check in.
		This option should be used for files that are shared.

	   -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 associated with the latest revision on
		the trunk.  If :rev is omitted, the symbolic name is
		deleted.




 Hewlett-Packard Company	    - 2 -   HP-UX Release 11i: November 2000






 rcs(1)								      rcs(1)




	   -Nname[:[rev]]
		Same as -n, except that it overrides a previous assignment
		of name.

	   -orange
		Deletes ("obsoletes") 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 head
		of the branch containing rev.  None of the outdated
		revisions can 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[txtfile]
		Writes descriptive text into the RCS file (deletes the
		existing text).	 If txtfile is omitted, rcs prompts the user
		for text supplied from the standard input, terminated with a
		line containing a single . or Ctrl-D.  Otherwise, the
		descriptive text is copied from the file txtfile.  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 user is removed.
		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 with a line
		containing a single . or Control-D.

	   -U	Sets locking to non-strict.  Non-strict locking means that
		the owner of a file need not lock a revision for check in.
		This option should not be used for files that are shared.
		The default (-L or -U) is determined by the system



 Hewlett-Packard Company	    - 3 -   HP-UX Release 11i: November 2000






 rcs(1)								      rcs(1)




		administrator.

    Access Control Lists (ACLs)
      Do not add optional ACL entries to an RCS file, because they are
      deleted when the file is updated.	 The resulting access modes for the
      new file might not be as desired.

 DIAGNOSTICS
      The RCS filename and the revisions outdated are written to the
      diagnostic output.  The exit status always refers to the last RCS file
      operated upon, and is 0 if the operation was successful; 1 if
      unsuccessful.

 EXAMPLES
      Add the names jane, mary, dave, and jeff to the access list of RCS
      file vision,v:

	   rcs -ajane,mary,dave,jeff vision

      Set the comment leader to tab* for file vision:

	   rcs -c'tab*' vision

      Associate the symbolic name sso/6_0 with revision 38.1 of file vision:

	   rcs -Nsso/6_0:38.1 vision

      Lock revision 38.1 of file vision,v so that only the locker is
      permitted to check in (see ci(1)) the next revision of the file.	This
      command prevents two or more people from simultaneously revising the
      same file and inadvertently overwriting each other's work.

	   rcs -l38.1 vision,v

 WARNINGS
      All rcs command options are available to anyone whose name appears in
      the file access list, including those to add and delete names in the
      access list, change strict locking, etc.	If these options must be
      restricted, other security methods should be employed.  Also see
      previous note regarding Access Control Lists.

 AUTHOR
      rcs was developed by Walter F. Tichy.

 SEE ALSO
      co(1), ci(1), rcsdiff(1), rcsmerge(1), rlog(1), rcsfile(4), acl(5),
      rcsintro(5).







 Hewlett-Packard Company	    - 4 -   HP-UX Release 11i: November 2000