Boost logo

Boost :

From: Ed Brey (brey_at_[hidden])
Date: 2000-12-14 11:11:43


From: "Dan Nuffer" <dnuffer_at_[hidden]>
>
> I used to think CVS was "evil" in respect to renaming/moving
> directories. Until one day I had the "aha" moment when I realized
why
> it's so hard to do. CVS preserves history. Thus, even when
everyone is
> working on version 5.20.4 or something, you can still go back and
check
> out version 1.19.0, and all the files will be in the right place.
It's
> a bad idea to move the CVSROOT directories around because then your
> older versions will have the wrong directory structure, causing
> makefiles to fail, documentation to be wrong, broken HTML links,
etc.!
> The one disadvantage of moving or renaming directories or files is
that
> you lose the continuity of the history. You don't actually lose the
> history. It's still there in the original file. When renaming a
file
> it is a good idea to add something like "this file used to be
> oldFile.cpp" to the first log message so people can see the older
> history if they want to. IMHO, the benefits are greater than the
> disadvantages.

Keeping renaming/moving of files and directories straight may be hard
to do, but it is very doable. There is at least one (and probably
more) commercial tool that provides the functionality of allowing a
folder/file to be moved with its history maintained, while still
preserving historically the exact look of what your tree looked like
in the past.

Using a tool with such functionality means that you can change the
directory structure at will with no fear of breaking an old version,
because the structure changes are recorded as part of the history.

I'm not very familiar with CVS, but it appears that this is just a
matter of it lacking a feature that would be nice to have.
Fortunately, I think the current discussion is sufficiently thorough
that we will come up with a future-proof structure, and we won't have
to worry much about restructuring in the future. This means that
CVS's limitations probably won't cause any significant trouble.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk