What are the gotchas of moving an SVN server/repository from Linux to Windows?
We have a server running Fedora 7 that we use as our SVN repository server. New IT policies where I work are mandating that we to a Windows box if we want to allow our server to be on the network.
What are the challenges that must be overcome to make this move? Some of these items may be used to get a policy exception in place.
A little check-list:
- Access method. If you access your SVN server via SSH, you might consider switching to HTTP since it's much more mainstream on Windows.
-
UUID. If you move your repo, just don't forget to make the old one either inaccessible or read-only. Then you can even reuse the same UUID, and enjoy the
--relocate
option of theswitch
subcommand on the client for a seamless relocation (no need for a fresh checkout) - Apache. You might already have an IIS (or another Web server on the box) so you should change the
-
Database. If you use FSFS as the repository database you can just copy it over. BDB requires a
svn dump/load
cycle. Think hard if you want to put your database on a network share : only FSFS will work (it's not really recommended though). -
Users. You have to think about how your users will be authenticated. It may be as simple as copying a
htpasswd
file over. -
SVN Version. Just beware that you use the same version of your SVN server. If not, you might require a
svn dump/load
cycle. - Hooks. If you have hooks on your SVN server, it is possible that you have to port them. Either by installing the same script language (think ActivePython or ActivePerl), or just rewrite them in vbs or equivalent.
- Firewall. Just in case your server box is on a workstation edition, don't forget to open the firewall ports (quite trivial, but I got bitten once).
Not sure about all the details, but keep in mind any hooks/scripts you have running on your repository will need to be rewritten as batch files.
Dump/load would be the proper procedure and keep you safe from any problems. See the svn book