User Tools

Site Tools


rcs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
rcs [2025/03/05 14:57] – [Intro and Background:] zilogrcs [2025/03/05 15:16] (current) – [Basic RCS usage:] zilog
Line 1: Line 1:
-====== RCS — A System for Version Control ======+===== RCS — A System for Version Control =====
  
-===== Intro and Background: =====+==== Intro and Background: ====
 RCS was first released in 1982 by Walter Tichy at Purdue University making it one of the earliest version control systems (VCS) used for software development. Unlike modern VCS which are designed for distributed, concurrent development, RCS uses a centralized code repository where files are singularly checked in/out. Although largely supplanted RCS is still useful for small personal projects and is still natively included in the NetBSD operating system which SDF largely runs on. RCS is still actively maintained as a GNU Project at https://www.gnu.org/software/rcs/ . RCS was first released in 1982 by Walter Tichy at Purdue University making it one of the earliest version control systems (VCS) used for software development. Unlike modern VCS which are designed for distributed, concurrent development, RCS uses a centralized code repository where files are singularly checked in/out. Although largely supplanted RCS is still useful for small personal projects and is still natively included in the NetBSD operating system which SDF largely runs on. RCS is still actively maintained as a GNU Project at https://www.gnu.org/software/rcs/ .
  
Line 23: Line 23:
 The ''rcsintro(1)'' manpage covers much of the basics of RCS; below is a quick tour: The ''rcsintro(1)'' manpage covers much of the basics of RCS; below is a quick tour:
  
-    * create a working directory & RCS sub-dir: ''$ mkdir -p ~/rcs_fun/RCS'' +    * create a working directory & RCS sub-dir:   ''$ mkdir -p ~/rcs_fun/RCS'' 
-    * change to working dir & create a file:  ''$ cd ~/rcs_fun ; echo 'RCS is awesome!' > fubar'' +    * change to working dir & create a file:   ''$ cd ~/rcs_fun ; echo 'RCS is awesome!' > fubar'' 
-    * make initial commit of test file:  ''$ ci -u fubar  # enter description; end w/ "." on newline'' +    * make initial commit of test file:   ''$ ci -u fubar '' 
-    * check file back out for further edits: ''$ co -l fubar && echo 'this file is fubar' >> fubar'' +    * check file back out & edit again  ''$ co -l fubar && echo 'this file is fubar' >> fubar'' 
-    * commit new revision of file:  ''$ ci -u fubar  # enter decription of edit; end w/ "." on newline''+    * view diffs (working file vs last checked ver.):    ''$ rcsdiff fubar'' 
 +    * commit new revision of file:   ''$ ci -u fubar'' 
 +    * view log of changes:    ''$ rlog fubar''
  
-The ''rlog(1)'' and ''rcsdiff(1)'' commands can be used to view the log of changes and differences between revisions respectively.+Specific revisions can be acted upon by passing them to the various commands in the form ''-r<start>[ -r<end>]'' ; by default RCS compares the working copy to the last checked in version. 
 + 
 +=== RCS by Example === 
 +While comprehensive coverage of all RCS can do is beyond the scope of this introductory tutorial, the basics can be grasped fairly easily and are perhaps best conveyed via an annotated [[RCS Sample Session]].
  
-While a comprehensive tour of all RCS can do is beyond the scope of this introductory tutorial, the basics can be grasped fairly easily and are perhaps best conveyed via an illustrative [[RCS Sample Session]]. 
 ==== RCS Quirks ==== ==== RCS Quirks ====
     * no space allowed between options and arguments, i.e. use ''$ co -r1.3'' //not// ''$ co -r 1.3''     * no space allowed between options and arguments, i.e. use ''$ co -r1.3'' //not// ''$ co -r 1.3''
rcs.1741186638.txt.gz · Last modified: 2025/03/05 14:57 by zilog