Your recipe should work, assuming the file was added in r100 and never changed or copied afterwards. You may pass --deltas to 'svnadmin dump' (no reason not to). It'll offset r101:r200 revnums by one in the new repository.
Another way is to use svnsync with path-based authz blocking the file (and all its copied) from the sync user. Giorgio F. Signorini wrote on Fri, Mar 16, 2012 at 19:33:17 +0100: > Hello > > I need to delete a file permanently from my repository, since it was > added by mistake and is very big. I understand this is not a very easy > thing to do, and is related to the project of an 'svn obliterate' > command. > > I seem to have found a simple workaround for my problem, and I would > very much like to share it for comments. > > Suppose the current revision is 200 and the big file was added in rev > 100. I can use the dump / load scheme of svnadmin, taking care in > skipping revision 100 during the process: > > svnadmin dump -r1:99 oldrepos > rev.1-99 > svnadmin dump -r101:200 --incremental oldrepos > rev.101-200 > > svnadmin create newrepos > svnadmin load newrepos < rev.1-99 > svnadmin load newrepos < rev.101-200 > > > I only wonder if the "--incremental" option will work even when > merging non-contiguous revisions. Please note that in revision 100 > only the big unwanted file was added. > > Thank you for your help > > -- GFS > ------------------------------------------------------------------------ > Dr. Giorgio F. SIGNORINI, PhD > Dipartimento di Chimica tel: +39-055-457-3085 > Universita` di Firenze > via della Lastruccia, 3 email: giorgio.signorini "at" unifi.it > I-50019 Sesto F. (Firenze) Italy http://www.chim.unifi.it/~signo > My PGP key: http://srv.chim.unifi.it/~signo/signo.asc > ------------------------------------------------------------------------