How to create your own home SVN repository with Xampp/Apache
September 21, 2008
Posted by on
I am not going to talk about the benefits of version control in your projects, those you can search and read about elsewhere. In this HowTo I am simply going to describe the steps necessary to setup your own svn repository accessible from anywhere in the world using the apache server. This will assume you are using apache installed with xampp the all-in-one installer of your WAMP (Windows Apache,MySQL,PHP) setup.
- After installing Xampp, point your browser at http://localhost to make sure that your server is running.
- Copy the files mod_authz_svn.so and mod_dav_svn.so found under your subversion bin directory (e.g. C:/Program Files/Subversion/bin/) to the C:\xampp\apache\modules directory,
- Now edit your Apache httpd.conf found under C:\xampp\apache\conf (keep a backup for peace of mind) and enable the lines
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
If you can’t see these lines copy-paste them from here. Then go at the end of the file and add the following lines:
# Configure Subversion repository
AuthName “Subversion repository”
- Save and close the httpd.conf file, then restart Apache.
NOTE: In case apache does not start this means that there is something wrong in the httpd.conf file. Go to the xampp/apache/bin folder in your drive and run apache from the command line to see exactly at which line the problem is. For examle you might have to remove the quotes on the above lines to get it to work. So you need to experiment until apache gets up and running correctly.
Also note that If you have Skype running you might not be able to start any of the Xampp service due to some strange conflict. Close skype, start the xampp services you want and then start skype again. This should solve it.
- Now create two folders in your C:\ drive, one called svn and the other called svn_conf.
- In order to password protect your repository fire up a command prompt and browse into the apache/bin folder C:\xampp\apache\bin and then type htpasswd -c C:\svn_conf\passwd yourname
- Now it’s time to create your first repository. Go in the C:\svn folder just created and right-click in it. From the drop-down menu choose ToirtoiseSVN ->Create repository here. If all goes fine ToirtoiseSVN will inform you that the repository was created sucessfuly.
- Finally in order to import the directory where you keep your source code into your repository right-click on the source code directory and choose ToirtoiseSVN->Import. In the window that shows up type the path to your svn repository, that is file:///C:/svn.
Test your setup by pointing your browser to http://localhost/svn and entering the username/password combination that you have defined.
inspiration & credits:lifehacker