Go to the previous, next section.

Removing files from a module

Modules change. New files are added, and old files disappear. Still, you want to be able to retrieve an exact copy of old releases of the module.

Here is what you can do to remove a file from a module, but remain able to retrieve old revisions:

What happens when you commit the removal of the file is that inside the source repository, it is moved into a subdirectory called `Attic'. CVS normally doesn't look in that directory when you run e.g. checkout. However, if you are retrieving a certain revision via e.g. `cvs checkout -r some-tag', it will look at the files inside the `Attic' and include any files that contain the specified tag.

This method is simple and works quite well, but it has some known deficiencies:

There is a design for a rename database that will solve these problems and many others, but it is not yet implemented.

Go to the previous, next section.