On VisualSVN Server and Windows 2000
So… code repositories are great. Any programmer who has worked on a project with more than one person has probably discovered the virtue of products like TortoiseSVN. It’s a great way to hook up to a repository already set up. For the indie developer the next question is: “What options are there for creating a repository that is available to other users?” Here are a few.
Option 1)
Source Forge has repositories for projects hosted on their site. But those projects are publicly available, listed on the project page. Open Source is great for many things. It’s free, but not every project is meant to be fully disclosed to the public.
Option 2)
Purchase a repository host at a paid site. I’ve seen theses services for 1-month, 3-month, 6-month rentals and the like. If you only need the repository temporarily (say for a class group project), and you don’t want to worry about creating or hosting an account, this option may suit your needs.
Option 3)
‘What? It costs money?” you say. I know, I know. But the list isn’t done yet. For the ambitious indie developer, there is VisualSVN Server. This program makes it easy to setup and serve code. It contains a stripped down version of the Apache server, and sets up an SVN repository directory on your machine. You can use their Server Manager application to create the repository, manage users, create user groups with different permissions, and it has a menu option for copying the server URL to your clipboard.
A Story about SVN
All being said, VisualSVN Server is quite a painless way to get a repository going. Recently, I set up a small server at home. After installing a trial of Windows XP to test the functionality of the system, I found it sluggish and bulky for such basic hardware in use. So I opted for Windows 2000. It’s stable, lightweight, and therefore runs much faster on a small machine. Perfect. Except, I wanted a code repository. VisualSVN Server is great, but it is NOT supported on Windows 2000. Note this email from the makers of VisualSVN Server:
Hello!
Thank you for your interest in VisualSVN Server!
VisualSVN Server is not supported on Windows 2000 and for now we are not going to support it in future.
We recommend to run VisualSVN Server on Windows Server 2003 or on Windows Server 2008.
This is because their Server Manager application requires components that are not inherently available on Windows 2000. And their installer DOES NOT ALLOW INSTALLATION on Windows 2000. The only other option I found would have been a manual setup of an Apache server and manual configuration edits. I actually tried with a step-by-step tutorial, and found that the server failed when I added in svn support. No fun. But I was in a hurry that day, and I had neglected to re-format or clear the file system when I installed Windows 2000 over XP, and VisualSVN Server was still on my hard drive. It was clear that I could not use their manager app (”VisualSVN Server.msc”). But the repositories were already set up. What luck! There is a different application altogether that actually ’serves’ the code. It’s called “VisualSVNServer.exe” and (if using default directories) it’s in C:\Program Files\VisualSVN Serve\bin\. Note the Apache Server icon. And you might see the text “Apache HTTP Server” and “Apache Software Foundation” under it when your window is in tile view mode. It doesn’t do anything notable when you click on it. Just open a command window and spits out some text that say it fiddled with a system setting. But after attempting to connect from another machine, I found that this was all that is required to run the server.
So in my case, having the repositories already set up, I just dropped a shortcut to this file into my Start Menu’s “Startup” folder, and my server auto-starts when the machine boots into windows. The lesson is that while something may not be supported, it may still be possible. And for an additional note on SVN with Windows 2000: TortoiseSVN does not install with the default system components. But if you install the latest “Windows Installer” component, and put GDIPlus drivers in your system32 folder, that will work, too.
Game Development Conversations