Permanently Removing Items from a Repository
A few months into using Subversion, I realized that the CedarBackup code that I put into the repository was in a pretty indeterminate state. I didn't have a label for the last "stable" 1.x release (1.9) and I wasn't really quite sure what the state of the version in Subversion was. That meant it was going to be really difficult to maintain bug fixes to the stable branch as I worked on the major improvements in the unstable branch. I decided that I wanted to remove Cedar Backup from the repository completely and re-import it based on the latest stable tarball. Then, I'd create a branch to do 2.x development on.
The way you do this with Subversion is to dump the repository and filter out paths that you don't want. There's no other way (which is intentional):
svnadmin dump /opt/public/svn/software | svndumpfilter exclude cedar-backup
Save off the output in a dump file, then reimport as discussed above in the dump-and-load documentation.
You can also do this using a saved-off dump (rather than directly from svnadmin dump) and you can chain together the filter invocations as well.
The svndumpfilter command contains options such as --drop-empty-revs and --renumber-revs to trim the repository if lots of commits relate to the filtered-out sections. I had problems with these options, so I chose to just let empty revisions sit in the database.