are times when you need to restructure a project or when something
has gone wrong in the repository. In an ideal world, restructures or
repairs would all be done using the CVS commands explained in Chapter 3 or the
cvs admin command
explained in Chapter 7. Sometimes, however, those
commands can’t do what you’re
trying to achieve, and you need to modify the repository directly.
The main problem with editing the repository directly is that you may lose historic data. Removing files or directories affects retrieval of older releases of a project and may affect build scripts. Moving or renaming files or directories can affect older releases, build scripts, and instructions within your files.
Always freeze a repository with write locks before hand-editing it.
Always consider backing up and freezing the directories
you’re hand-editing. If you’re just
removing a stale lock, this isn’t necessary. But you
should backup and freeze directories if you’re
moving, removing, editing, or renaming content files. Try to get your
their sandboxes before you hand-edit the repository. They can
checkout new sandboxes afterwards.
If a user does not release an old sandbox and tries to act on a filename that the sandbox has records of, but the repository does not have the file, the user will receive strange errors. Correct these errors by releasing the user’s sandbox copy of the file in question and then checking out the file again using the new ...