Edit: Oh well, the question edit was made while I was typing. This is an answer to
Is there a way to combine two or more
repositories maintaining the version
history for both?
Assuming that
The existing repositories have a structure like:
and you want a structure something like:
Then for each of your project repositories:
svnadmin dump > project<n>.dmp
Then for each of the dump files:
svnadmin load --parent-dir "project<n>" <filesystem path to repos>
More complex manipulations are possible, but this is the simplest, most straightforward. Changing the source repository structure during a dump/load is hazardous, but doable through a combination of svnadmin dump
, svndumpfilter
, hand-editing or additional text filters and svnadmin load
Dealing with a third party provider
- Request
svnadmin dump
files for each of your repositories. The provider should be willing/able to provide this - it is your code!
- Create an SVN repository locally.
- Perform the actions listed above for the dump files.
- Verify the repository structure is correct with your favorite client.
- Create a dump file for the combined repositories.
- Request that the provider populate a new repository from this dump file.
YMMV: This seems to be a reasonable approach, but I've never worked with a third party provider like this.