Re: DCMS rationale Jonathan S. Shapiro (shap@eros-os.org)
Mon, 10 Apr 2000 10:19:45 -0400

> mv oldfile newfile
> cvs rm oldfile
> cvs add newfile
> cvs ci

Tried that. Doesn't work. Three problems:

  1. in all checkouts of old stuff predating the rename, a file "newfile" that did not really exist in that configuration will now appear (this bit me). This interacts very badly with automatic dependency generation, among other things, as the file probably will not compile in those configurations.
  2. *really* bad things happen if the name of "newfile" happens to have already existed and been cvs rm'd at some time in the past (this bit me).
  3. You can't track the history trail of newfile.

What CVS really needs to do is capture a complete list of rcs-file+version for each configuration. This is roughly what PRCS does now, but PRCS doesn't provide remoting. I've talked to Josh about doing this, and it's considerably harder to get right than it appears.

shap