This area is an archive and is no longer actively maintained. Information found on this page is likely to be extremely out of date and therefore highly inaccurate. We recommend the Ximbiot - CVS Wiki for up-to-date information about CVS and its associtated tools.

If you do find anything useful on this page that is not yet in the Ximbiot - CVS Wiki and you have the time, please add it!

Renames in CVS

Renames in CVS

The basic story about renaming files and directories (and how it might be improved) is in item #189 in the TODO file.

One additional design that isn't mentioned there is that each RCS file might have an additional per-revision field which contains the filename (relative to CVSROOT) of the file as of that revision. Thus an RCS file can be copied or moved and the history is preserved. I'm not sure what all the implications of this are, but it would seem to be similar to the rename database design ("ii" in TODO). That is, you need to think hard about making merges work, because merges no longer can occur strictly one file at a time.

One additional thought on the rename database ("ii" in TODO): one way to help handle the merge problem is to make the mapping from names to repository-files a user-visible file which then gets merged the same way as any other file (user-visible because resolving conflicts must be done by the user). This is similar to PRCS (at least in the sense of having a user-visible file with this kind of information).

[Cyclic Home]

Derek Price, CVS developer and technical editor of Essential CVS (Essentials line from O'Reilly Press) , and others offer consulting services and training through Ximbiot.