SVN move single directory into other repository (with history)

AndiDog picture AndiDog · Feb 25, 2010 · Viewed 23.1k times · Source

Related question: Moving repository trunk to another’s branch (with history)


I know that one can dump a complete SVN repository with history and load it into a user-defined (sub)directory of the target repository using:

// in source repo
> svnadmin dump . > mydumpfilename

// in destination repo (backslashes because I'm using Windows)
> svnadmin load . < mydumpfilename --parent-dir some\sub\directory

But this will import the full repository into the target repository's sub-directory. What I want is to define a sub-directory in the source repository that should be exported. Something like svnadmin dump . --source-path old\sub\dir > mydumpfilename.

How can I achieve that? If TortoiseSVN can do that, please say so ;)


SOLUTION: Thanks to Tim Henigan's answer, here's the correct way to do it:

// execute in destination repo
svndumpfilter include source\sub\dir < mydumpfilename | svnadmin load . --parent-dir destination\sub\dir

Hope this will help others, too...

Answer

Tim Henigan picture Tim Henigan · Feb 25, 2010

Check out svndumpfilter and this section on Repository Maintenance.

Once you have a dumpfile for the entire old repository, you can use svndumpfilter to extract just the portion that you want.

I am not aware of a way to do this with TortoiseSVN.