How would I get a full copy of an SVN repository and import it on another server?
You want to perform an svnadmin dump
. You can get help on this command via svnadmin help dump
or reading the docs. You can then load the dump file into your new server using svnadmin load
.
It depends on the repository type. If you're using fsfs, you can just copy the directory after stopping the server (to make sure you don't copy a transaction which is half completed). I've done that before and it worked flawlessly.
If you're using bdb
you should do an svnadmin dump
instead. (If the old and new computers are similar in terms of architecture and OS you may well just get away with a directory copy, but dumping the repository would be safer.)
If you don't have access to the physical server (and the server runs Subversion 1.4 or later) you could use svnsync to create a local copy of the complete repository.
After that you can use svnadmin to create a dumpfile from your local copy.
See also How do I create a dump file from my subversion hosting account?