home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / new / amigalibdisks / d982 / hwgrcs / readme < prev    next >
Text File  |  1994-04-04  |  18KB  |  413 lines

  1. This directory contains complete sources for RCS version 5.6.0.1.
  2.  
  3. RCS, the Revision Control System, manages multiple revisions of files.
  4. RCS can store, retrieve, log, identify, and merge revisions.
  5. It is useful for files that are revised frequently,
  6. e.g. programs, documentation, graphics, and papers.
  7.  
  8. /* Copyright (C) 1982, 1988, 1989 Walter Tichy
  9.    Copyright 1990, 1991 by Paul Eggert
  10.    Distributed under license by the Free Software Foundation, Inc.
  11.  
  12. This file is part of RCS.
  13.  
  14. RCS is free software; you can redistribute it and/or modify
  15. it under the terms of the GNU General Public License as published by
  16. the Free Software Foundation; either version 2, or (at your option)
  17. any later version.
  18.  
  19. RCS is distributed in the hope that it will be useful,
  20. but WITHOUT ANY WARRANTY; without even the implied warranty of
  21. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  22. GNU General Public License for more details.
  23.  
  24. You should have received a copy of the GNU General Public License
  25. along with RCS; see the file COPYING.  If not, write to
  26. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  27.  
  28. Report problems and direct all questions to:
  29.  
  30.     rcs-bugs@cs.purdue.edu
  31.  
  32. */
  33.  
  34. $Id: README,v 5.16.0.1 1993/03/25 04:27:12 eggert Exp $
  35.  
  36.  
  37. Installation notes:
  38.  
  39.   RCS requires a diff that supports the -n option.
  40.   Get GNU diff (version 1.15 or later) if your diff lacks -n.
  41.  
  42.   RCS works best with a diff that supports -a and -L,
  43.   and a diff3 that supports -E and -m.
  44.   GNU diff supports these options.
  45.  
  46.   Sources for RCS are in the src directory.
  47.   Read the directions in src/README to build RCS on your system.
  48.  
  49.   Manual entries reside in man.
  50.  
  51.   Troff source for the paper `RCS--A System for Version Control', which
  52.   appeared in _Software--Practice & Experience_, is in rcs.ms.
  53.  
  54.   If you don't have troff, you can get GNU groff to format the documentation.
  55.  
  56.  
  57. RCS compatibility notes:
  58.  
  59.   RCS version 5 reads RCS files written by any RCS version released since 1982.
  60.   It also writes RCS files that these older versions of RCS can read,
  61.   unless you use one of the following new features:
  62.  
  63.     checkin times after 1999/12/31 23:59:59 GMT
  64.     checking in non-text files
  65.     non-Ascii symbolic names
  66.     rcs -bX, where X is nonempty
  67.     rcs -kX, where X is not `kv'
  68.     RCS files that exceed hardcoded limits in older RCS versions
  69.  
  70.   A working file written by RCS 5.5 or later contains four-digit years in its
  71.   keyword strings.  If you check out a working file with RCS 5.5 or later,
  72.   an older RCS version's `ci -k' may insist on two-digit years.
  73.   Fix this with `co -V4', or by editing the working file.
  74.  
  75.  
  76. Features new to RCS version 5.6.0.1 include:
  77.  
  78.   A new DIFF3_A configuration flag for GNU diff3 2.1 and later;
  79.   see src/README.
  80.  
  81. Features new to RCS version 5.6 include:
  82.  
  83.   Security holes have been plugged; setgid use is no longer supported.
  84.  
  85.   co can retrieve old revisions much more efficiently.
  86.   To generate the Nth youngest revision on the trunk,
  87.   the old method used up to N passes through copies of the working file;
  88.   the new method uses a piece table to generate the working file in one pass.
  89.  
  90.   When ci finds no changes in the working file,
  91.   it automatically reverts to the previous revision unless -f is given.
  92.  
  93.   RCS follows symbolic links to RCS files instead of breaking them,
  94.   and warns when it breaks hard links to RCS files.
  95.  
  96.   `$' stands for the revision number taken from working file keyword strings.
  97.   E.g. if F contains an Id keyword string,
  98.   `rcsdiff -r$ F' compares F to its checked-in revision, and
  99.   `rcs -nL:$ F' gives the symbolic name L to F's revision.
  100.  
  101.   co and ci's new -M option sets the modification time
  102.   of the working file to be that of the revision.
  103.   Without -M, ci now tries to avoid changing the working file's
  104.   modification time if its contents are unchanged.
  105.  
  106.   rcs's new -m option changes the log message of an old revision.
  107.  
  108.   RCS is portable to hosts that do not permit `,' in filenames.
  109.   (`,' is not part of the Posix portable filename character set.)
  110.   A new -x option specifies extensions other than `,v' for RCS files.
  111.   The Unix default is `-x,v/', so that the working file `w' corresponds
  112.   to the first file in the list `RCS/w,v', `w,v', `RCS/w' that works.
  113.   The non-Unix default is `-x', so that only `RCS/w' is tried.
  114.   Eventually, the Unix default should change to `-x/,v'
  115.   to encourage interoperability among all Posix hosts.
  116.  
  117.   A new RCSINIT environment variable specifies defaults for options like -x.
  118.  
  119.   The separator for revision ranges has been changed from `-' to `:', because
  120.   the range `A-B' is ambiguous if `A', `B' and `A-B' are all symbolic names.
  121.   E.g. the old `rlog -r1.5-1.7' is now `rlog -r1.5:1.7'; ditto for `rcs -o'.
  122.   For a while RCS will still support (but warn about) the old `-' separator.
  123.  
  124.   RCS manipulates its lock files using a method that is more reliable under NFS.
  125.  
  126.   Experimental support for MS-DOS and OS/2 is available as part of a separate
  127.   software distribution.
  128.  
  129.  
  130. Features new to RCS version 5 include:
  131.  
  132.   RCS can check in arbitrary files, not just text files, if diff -a works.
  133.   RCS can merge lines containing just a single `.' if diff3 -m works.
  134.   GNU diff supports the -a and -m options.
  135.  
  136.   RCS can now be used as a setuid program.
  137.   See ci(1) for how users can employ setuid copies of ci, co, and rcsclean.
  138.   Setuid privileges yield extra security if the effective user owns RCS files
  139.   and directories, and if only the effective user can write RCS directories.
  140.   RCS uses the real user for all accesses other than writing RCS directories.
  141.   As described in ci(1), there are three levels of setuid support.
  142.  
  143.     1.  Setuid works fully if the seteuid() system call lets any
  144.     process switch back and forth between real and effective users,
  145.     as specified in Posix 1003.1a Draft 5.
  146.  
  147.     2.  On hosts with saved setuids (a Posix 1003.1-1990 option) and without
  148.     a modern seteuid(), setuid works unless the real or effective user is root.
  149.  
  150.     3.  On hosts that lack both modern seteuid() and saved setuids,
  151.     setuid does not work, and RCS uses the effective user for all accesses;
  152.     formerly it was inconsistent.
  153.  
  154.   New options to co, rcsdiff, and rcsmerge give more flexibility to keyword
  155.   substitution.
  156.  
  157.     -kkv substitutes the default `$Keyword: value $' for keyword strings.
  158.     However, a locker's name is inserted only as a file is being locked,
  159.     i.e. by `ci -l' and `co -l'.  This is normally the default.
  160.  
  161.     -kkvl acts like -kkv, except that a locker's name is always inserted
  162.     if the given revision is currently locked.  This was the default in
  163.     version 4.  It is now the default only with when using rcsdiff to
  164.     compare a revision to a working file whose mode is that of a file
  165.     checked out for changes.
  166.  
  167.     -kk substitutes just `$Keyword$', which helps to ignore keyword values
  168.     when comparing revisions.
  169.  
  170.     -ko retrieves the old revision's keyword string, thus bypassing keyword
  171.     substitution.
  172.  
  173.     -kv retrieves just `value'.  This can ease the use of keyword values, but
  174.     it is dangerous because it causes RCS to lose track of where the keywords
  175.     are, so for safety the owner write permission of the working file is
  176.     turned off when -kv is used; to edit the file later, check it out again
  177.     without -kv.
  178.  
  179.   rcs -ko sets the default keyword substitution to be in the style of co -ko,
  180.   and similarly for the other -k options.  This can be useful with binary file
  181.   formats that cannot tolerate changing the lengths of keyword strings.
  182.   However it also renders a RCS file readable only by RCS version 5 or later.
  183.   Use rcs -kkv to restore the usual default substitution.
  184.  
  185.   RCS can now be used by development groups that span timezone boundaries.
  186.   All times are now displayed in GMT, and GMT is the default timezone.
  187.   To use local time with co -d, append ` LT' to the time.
  188.   When interchanging RCS files with sites running older versions of RCS,
  189.   time stamp discrepancies may prevent checkins; to work around this,
  190.   use `ci -d' with a time slightly in the future.
  191.  
  192.   Dates are now displayed using four-digit years, not two-digit years.
  193.   Years given in -d options must now have four digits.
  194.   This change is re