- publishing free software manuals

Articles > MD5RCS - A program for computing checksums of RCS revisions

15 December 2003 - Brian Gough

MD5RCS is a shell-script for generating and verifying the checksums of all the revisions in an RCS file.

In combination with the 'find' command it can be used to compare an entire CVS repository against a copy when modifications have been checked in to some of the files. A direct file comparison fails in this case, due to all the revisions being stored in a single RCS file.

Example output,

$ md5rcs -c ~/cvs.md5
/cvs/gsl/blas/Makefile.am,v(1.28): OK
/cvs/gsl/blas/Makefile.am,v(1.27): OK
/cvs/gsl/blas/Makefile.am,v(1.26): OK
/cvs/gsl/blas/Makefile.am,v(1.25): OK
/cvs/gsl/blas/Makefile.am,v(1.24): OK
/cvs/gsl/blas/Makefile.am,v(1.23): OK
....

The program uses a patch to the rcs 'rlog' command to extract symbolic names and revision numbers from an RCS file.

CVS and RCS need to be enhanced to support checksums and digital signatures in an extensible way -- we will support such a project as funds permit.

The MD5RCS shell-script and patch to RCS are available from the following location,

There is also a demonstration RCS file demo,v.