Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Revision Control System
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Behavior == === Mode of operation === RCS works well with standalone files and supports multi-file projects but, by modern standards, that support is limited: RCS can assemble the versions of multiple files into a single release (via "symbolic names")<ref>F. Tichy, Walter: "RCS: A System for Version Control", page 15. Department of Computer Science Technical Reports, Purdue University. Paper 394. https://docs.lib.purdue.edu/cstech/394</ref> but it lacks support for [[Atomic commit#Revision control|atomic commit]] across those files. Although it provides branching, the version syntax is cumbersome.{{Citation needed|reason=what's cumbersome about it?!|date=February 2025}}<!-- need some proper lead-in to point out that tools which use RCS files such as CVS use the same branching, but make it simpler to use --> Instead of using branches, many teams just use the built-in locking mechanism and work on a single ''head'' branch.<ref name=":1" /> === Usage === RCS revolves around the usage of "revision groups" or sets of files that have been checked-in via the <code>co</code> (checkout) and <code>ci</code> (check-in) commands. By default, a checked-in file is removed and replaced with a ",v" file (so foo.rb when checked in becomes foo.rb,v) which can then be checked out by anyone with access to the revision group. RCS files (again, files with the extension ",v") reflect the main file with additional metadata on its first lines. Once checked in, RCS stores revisions in a tree structure that can be followed so that a user can revert a file to a previous form if necessary.<ref name=":1" /> === Advantages === * Simple structure and easy to work with <ref name=":2">{{Cite web|url=https://mauriziostorani.wordpress.com/2008/12/10/revision-control-concepts-revision-control-system-rcs-concurrent-versions-system-cvs-and-subversion/|title=Revision control concepts β Revision Control System (RCS), Concurrent Versions System (CVS) and Subversion|date=2008-12-10|website=IT PASSION - "IT professional Blog"|access-date=2017-02-20}}</ref> * Revision saving is not dependent on a central repository <ref name=":2" /> === Disadvantages === * There is little security, in the sense that the version history can be edited by the users.<ref name=":2" /> * Only one user can work on a file at a time.<ref>{{Cite web|url=https://www.ibr.cs.tu-bs.de/kb/revision-control.html|title=Revision Control Systems (RCS, CVS, Subversion, Git)|first=Frank|last=Steinberg|publisher=[[Technical University of Braunschweig]]|language=en|access-date=2017-02-20}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)