RCS info wanted

Mark Runyan runyan at hpcuhc.cup.hp.com
Tue Mar 19 07:19:49 AEST 1991


>/ amir at pilat.Israel.Silvaco.COM (Amir J. Katz (Xpert)) 
>There is an alternative to SCCS, called RCS (Revision Control System).
>Questions:
>1. Is this a commercial product or public domain ?

It comes from GNU

>2. Where can I get more information about RCS ?

"RCS - A system for Version Control", Walter Tichy, _Software_Practice_and_
  Experience_, Vol 15(7), 637-654 (July 1985)

"Design, Implementation, and Evaluation of a Revision Control System", Walter 
  Tichy, _IEEE_, 58-67, (??? 1982)

>3. Is it better than SCCS ? If so, why ?

--- Repost of a previous response I made on the subject:

A simple questions that has a complicated and long answer.

Possible short answers.

1. SCCS is supported by AT&T.  RCS isn't.

2. RCS allows you treat a set of files as a family of files while SCCS is
   meant primarily for keeping the revision history of files.  RCS has
   the ability to use symbolic names to point to sets of revisions.

3. [religious argument] RCS has an easier interface for first time users.
   SCCS has more options for determining when a specific line of code
   was added to a system.

4. RCS files are directly editable.  SCCS files should only be acted on 
   by the SCCS tools.  (While you *may* edit an SCCS file, you will have
   to recalculate the checksum using the admin program.  Also, editing
   either RCS or SCCS files is a bad idea just because mistakes are so
   easy to make and so fatal to the history of the file).

5. RCS keeps history in files with a ",v" suffix.  SCCS keeps history in
   files with a "s." prefix.  Some Make programs recognize the "s."
   prefix while having trouble with ",v" suffix.  Your mileage will vary.

6. Locks are kept in separate files for SCCS.  A lock on an RCS file is 
   kept in the RCS file.

7. RCS stores its revisions so retrieval of the latest revision is quick
   and easy, but early revisions take longer.  SCCS stores revisions so
   that recovering any given revision takes a constant amount of time which
   increases with the number of revisions stored.  (RCS uses backward
   deltas.  SCCS uses a "merged delta" concept. SCCS does *NOT* use
   forward deltas).

8. You can translate SCCS to RCS, but not the other way.  

9. They use different keywords that are expanded in the text.  For SCCS
   the keyword "%R%" is replaced with the revision number if the file
   is checked out for reading.  In RCS, the keyword $Revision$ has the
   revision number added to it when the file is checked out (either
   locked or not).

Other than that (and a few more that others may throw in) they are essentially
the same.  As a comparison of the commands:

   SCCS Command                RCS Command             Explanation
 admin -i -nfile s.file          ci file,v     Checks in the file for the
						first time, creating the
						revision history file.
 get s.file                      co file,v     Check out a file for reading.
 get -e s.file                  co -l file,v   Check out a file for modification
 delta s.file                   ci file,v      Check in a file previously
						locked
 prs s.file                     rlog file,v    Print a history of the file.
sccsdiff -rx -ry s.file  rcsdiff -rx -ry file,v  Compare two revisions.
    ???                        rcs -l file,v   Lock the latest revision
    ???                        rcs -u file,v   Unlock the latest revision.
						Possible to break another's 
						lock, but mail is sent to
						the other person to explain
						why.



More information about the Comp.unix.questions mailing list