RCS organizes the revisions into an ancestral tree. The initial revision is the root of the tree, and the tree edges indicate from which revision a given one evolved. Besides managing individual revision groups, RCS provides flexible selection functions for composing configurations. RCS may be combined with MAKE, resulting in a powerful package for version control. RCS also offers facilities for merging updates with customer modifications, for distributed software development, and for automatic identification.
Identification is the stamping of revisions and configurations with unique markers.
These markers are akin to serial numbers, telling software maintainers unambiguously which configuration is before them. RCS is designed for both production and experimental environments. In production environments, access controls detect update conflicts and prevent overlapping changes. In experimental environments, where strong controls are counterproductive, it is possible to loosen the controls. Although RCS was originally intended for programs, it is useful for any text that is revised frequently and whose previous revisions must be preserved.