We have a huge amount of data in CVS (currently our main cvsroot is 2GB). Every so often it makes sense to clean some of this out .. for example copies of open source projects may get put in CVS while we produce a patch, but then forgotten about afterwards. In some cases it may make sense to completely destroy these files and directories, prehaps to save disk space on whatever drive holds the repository. With CVS it's fairly easy to simply remove them from CVSROOT (obviously this is something you do with great care since if people actually have checkouts of these files it gets a bit confusing). I can't see any way of achieving the same effect with SVN. Another use-case might be when you've just imported a large external project, and realised that you've made a mistake .. you've imported the wrong version, or whatever. Obviously creating per-project repositories would solve this issue, but it might be nice to have the 'annihilate' option. Clearly this would be a 'use with great care/don't use at all it completely defeats the point of version control' type option, but I still think SVN might benefit from it's existance.
Original issue reported by swhite