This is an old revision of the document!
Description
It has, very occasionally, been necessary to completely remove all traces of a file, or code, from the FreeBSD repository.
Some examples:
- Legally unencumbered. A developer commits a .o file from their working copy, or (worse) a core file.
- Legally encumbered. A developer commits some source code that their employer has not licensed for release to FreeBSD, or a developer commits a binary blob of firmware as part of a device driver.
When this happens it is necessary not only to revert the commit, but to ensure that the file or code is removed from all mirrors as well. This is especially important in the case of legally encumbered code.
Ideally this would also not invalidate any developer working copies checked in the time between the original commit and its removal.
Current Implementation
One of the CVS repo-meisters has to hand-edit the appropriate ,v file to remove all traces of the commit. This change then flows to the downstream mirrors via CVSup.
XXX - The downstream mirrors do not need to be aware of this change, and the CVS command line tools will update checked out working copies as appropriate.