Normally, you maintain RCS files in a subdirectory called RCS, so the first step in using RCS should be:
mkdir RCS
Next, you place an existing file (or files) under RCS control by running the check-in command:
ci
file
This creates a file called file,v
in the RCS directory. file,v
is called an RCS file, and it stores all future revisions of file. When you run ci on a file for the first time, you are prompted to describe the contents. ci then deposits file into the RCS file as revision 1.1.
To edit a new revision, check out a copy:
co -l
file
This causes RCS to extract a copy of file from the RCS file. You must lock the file with -l
to make it writable by you. This copy is called a working file. When you're done editing, you can record the changes by checking the working file back in again:
ci
file
This time, you are prompted to enter a log of the changes made, and the file is deposited as revision 1.2. Note that a check-in normally removes the working file. To retrieve a read-only copy, do a check-out without a lock:
co
file
This is useful when you need to keep a copy on hand for compiling or searching. As a shortcut to the previous ci/co, you could type:
ci -u
file
This checks in the file but immediately checks out a read-only ("unlocked") copy. In practice, you would probably make a "checkpoint" of your working version and then keep going, like this:
ci -l
file
This checks in the file, and then checks it back out again, locked, for continued work. To compare changes between a working file and its latest revision, you can type:
rcsdiff
file
Another useful command is rlog, which shows a summary of log messages. System administrators can use the rcs command to set up default behavior of RCS.