Article: RCS—A System for Version Control

Walter F. Tichy

Purdue University
Department of Computer Sciences

West LafayetteIndiana 47907

July 1985


An important problem in program development and maintenance is version control, i.e., the task of keeping a software system consisting of many versions and configurations well organized. The Revision Control System (RCS) is a software tool that assists with that task. RCS manages revisions of text documents, in particular source programs, documentation, and test data. It automates the storing, retrieval, logging and identification of revisions, and it provides selection mechanisms for composing configurations. This paper introduces basic version control concepts and discusses the practice of version control using RCS. For conserving space, RCS stores deltas, i.e., differences between successive revisions. Several delta storage methods are discussed. Usage statistics show that RCS’s delta storage method is space and time efficient. The paper concludes with a detailed survey of version control tools.

Full-text of Article

Copying Information

This document is derived from a Groff source document contained in the GNU RCS software package. The software distribution includes a "COPYING" file licensing the source under the GNU General Public License (GPL). Therefore, as stipulated by the GPL, the same rights and freedoms are continued to the document as published here. As required, the source files used to create these formats are made available here including this note about its copying information.

Hacking Information

Individuals interested in doing the following tasks are encouraged to do so and contact me. The document above could be converted to the GNU Texinfo source format from the DocBook XML source file, and then compiled with the Texinfo file into print document formats including PostScript and PDF.

Back to Using GNU RCS

Web site by Aaron Hawley
$Id: tichy1985rcs.html,v 1.4 2005-08-15 23:17:59-04 ashawley Exp $