This is not a direct answer to your question, but you might want to take a look at Subversion. It 's designed to be very much like CVS, only it supports versioned moving & renaming of files and directories and has some other interesting features that take care of the more annoying properties of CVS.