RCS How To Introduction RCS is an extremely limited source control system. Due to these limitations, developers eventually extended it to create CVS and various other source control systems that could be used by multiple developers on multiple machines simultaneously. However, at times CVS' full functionality isn't needed (e.g. when you're dealing with single sysadmin type files, say, in /etc) and RCS makes more sense. You still get versioning and a modicum of backups, but you don't have to deal with checking out a new /etc to get the directory under CVS control. Usage To create an RCS version of your file, first mkdir RCS . This isn't necessary; the ,v files can be created in the same directory as your source file. However, it's neater to keep the ,v files out of plain sight. Then ci -u filename and enter a comment. So, for instance, if you wanted to keep revisions of your /etc/crontab you would: % cd /etc % mkdir RCS % ci -u crontab To start editing, % co -l crontab % vim crontab % ci -u crontab The checkin will ask for a comment, for your changes. During the checkout, it may warn you that a writable version exists. This happens if someone else has checked out the file for editing and hasn't checked back in yet, or forcibly chmod'ed the file. Either way, make sure you aren't blowing away their changes. Cancel out of the checkout, and do an rcsdiff filename to see what changes are there. You may need to eventually % cp filename filename.bak % co -l filename # Force it; you'll overwrite the changed file % mv filename.bak filename % vim filename # Note in the comments that you're including the previous unchecked-in changes as well % ci -u filename To view history, use the rlog command. There are also ways to branch and merge RCS files, but if you've gotten to that point, you probably shouldn't be using RCS at all, and should be using CVS. Resources [WWW] http://www.gnu.org/software/rcs/rcs.html