RCS HELP File: rcs.help Author: course (send problems to walton@das) Version: 2 Purpose: RCS implements a system for storing past and present versions of a file "foo" in another file "foo,v". The second file is usually put in the RCS subdirectory of the directory containing "foo", so its fuller pathname is "RCS/foo,v". In storing many versions of "foo" in "foo,v", RCS stores mostly just the differences between versions, thus saving much storage space compared to a normal file system. RCS is very useful for backing up files in case you accidentally delete them. It is also useful for seeing what changes you recently made. mkdir RCS Makes the RCS subdirectory of the current directory. DO THIS FIRST, before checking any files in. ci -l file1 file2 ... Checkin (i.e. back up) the files. The current versions of the files are not touched, only backups are made (but DO NOT FORGET THE -l). rcsdiff file1 file2 ... Output the differences between the files in the current directory and the last version of the files checked in. co -l file1 file2 ... Checkout (retrieve from backup) the files (in case you lost them or did a ci without the -l). Infrequently used commands: ------------------------ rlog file Print info on versions contained in "RCS/file,v". Versions are called "revisions". rcsdiff -r1.n file Output the differences between the file in the current directory and version ("revision") 1.n in "RCS/file,v". ci file1 file2 ... Checkin (i.e. back up) the files, deleting the files from the current directory. This command is typically given only by accident, and requires a co -l (see above) to recover the file in the current directory). co -r1.n file Checkout (retrieve) version (revision) 1.n from "RCS/file,v". CLOBBERS "file" in the current directory. Does no locking if -l not given. rcs -l file Lock file (see below for explanation). More Detailed Explanation of RCS: -------------------------------- "checkin" A technical term meaning to move a file "foo" from the current directory into its RCS storage file "RCS/foo,v". The file becomes the last version put into "RCS/foo,v", and the file is deleted from the current directory. "checkout" A technical term meaning to copy a file "foo" (actually, a version of "foo", by default the latest version) from its RCS storage file "RCS/foo,v" to the current directory. "locked" A technical term. "RCS/foo,v" contains a bit that indicates whether (the latest version of) "foo" is locked or unlocked. If "foo" is locked, it has been checked out with the intention of writing it, and it is OK to check it back in. If "foo" is unlocked, it is not permitted to check it back in (it may have been checked out just for the purpose of reading it). ci -l file1 file2 ... Check the files in, then check them right back out and make them locked and writable. May be used to check in files never checked in before (so "RCS/filen,v" does not yet exist). co -l file1 file2 ... Check files out and make them locked and writable. rcs -l file Lock file. If the file is locked by some other person, but you can write the RCS directory, this command will allow you to break the lock of the other person but will email that person.