Conceptual Overview
This tutorial aims to give the reader an understanding of the RCS
configuration management tool.
Basics of RCS
The Revision Control System (RCS) was designed by Walter Tichy of the
Department of Computer Science at Purdue University. RCS is a software tool
for UNIX systems which lets people working on the system control "multiple
revisions of text ... that is revised frequently, such as programs or
documentation." [TIC82]
It can be applied to development situations of all sorts, including the
creation of documents, drawings, forms, articles, and of course, source code.
In a typical software development environment, many developers will
be engaged in work on one code base. If everyone was to be allowed to
edit and modify any development item whenever they felt like it, it should
be obvious that chaos would tend to result while little productive work
got done. Instead of suffering under such an environment, most
developers prefer to implement version control tools such as
the one described here.
Version control tools allow an individual developer to maintain control
over an item such as a source file while they implement and test changes
to it. During this period, while the file is "checked out", no
one else is allowed to modify it. When the developer is satisfied
that the changes have been implemented successfully and that they broke
nothing in the meantime, the file may be "checked in" to the
baseline database for use by everyone. The specifics of this process
for RCS will be discussed in the tutorial proper.
Earlier implementations of version control tools include AT&T's SCCS,
IBM's CLEAR/CASTER, and DEC's CMS. RCS,
implemented in 1982, attempts to fix several shortcomings the
author found in previous tools.
Readers interested in learning more about RCS than is presented here
are referred to the articles this author used in construction of the
tutorial, [TIC82] and
[TIC85] (links lead to References page).
Now, on to the hands-on tutorial.