Hi there. I would like to split our subversion repository as it has now attained a size that makes it difficult to easily backup/maintain and there are several area in that repo dedicated to projects no longer maintained
Before I proceed, I would like to ask to questions in order to confirm that I got everything right. I've read the handbook several times but there are technical aspects, somehow I foresee a problem. So my SVN repository is like: /project1 /project2 /project3 /project4 /main/sub-project1 /main/sub-project2 /main/sub-project3 /main/sub-project4 What I would like is that working repo from now on to only contain: /project1 /project4 /main/sub-project1 /main/sub-project4 While another will contain: /project2 /project3 /main/sub-project2 /main/sub-project3 Should mention that I would like the revision number and history to remain the same across both repo; so people can easily move their existing checkout using svn switch. so first, I have performed a full dump: svnadmin dump /path/to/repo > repo.dump Then I have run svndumpfilter like so: svndumpfilter include project2 < repo.dump > projects.project2.dump svndumpfilter include project3 < repo.dump > projects.project3.dump svndumpfilter include main/sub-project2 < repo.dump > projects.sub-project2.dump svndumpfilter include main/sub-project3 < repo.dump > projects.sub-project3.dump Then, to create the new repo, I would do: svnadmin create newrepo svnadmin load --ignore-uuid newrepo < projects.project2.dump svnadmin load --ignore-uuid newrepo < projects.project3.dump svnadmin load --ignore-uuid newrepo < projects.sub-project2.dump svnadmin load --ignore-uuid newrepo < projects.sub-project3.dump Is that what I can expect? Isn't there going to be some conflicts in regards to the empty revision that are going to be added? should I add : --drop-empty-revs in the 2nd and following svnadmin command? I'm suspecting that what is an empty revision in the first load, will be a loaded revision in the 2nd dump and is likely going to cause a conflict.. I haven't tried yet because the dump is so big (150GB) and it's taking several hours for each svndumpfilter to complete Now, finally, what I would like to do is remove the exported directory from the original repo ... In my foggy understanding of the process, I can't figure how I can do it other than working in succession from one dump to the next such as: svndumpfilter exclude project2 < repo.dump > exclude.project2.dump svndumpfilter exclude project3 < exclude.project2.dump > exclude.project3.dump svndumpfilter exclude project3 < exclude.project3.dump > exclude.project4.dump svndumpfilter exclude project3 < exclude.project4.dump > exclude.final.dump Is that right? Than obviously once it's all done: svnadmin load newrepo < exclude.final.dump Hopefully this is all I need to do, other than a massive amount of free disk space and plenty of time. Thank you in advance Jean-Yves