« If God Used A Computer... | Main | 500 Server Errors »
Subversion/Trac
For the past 2 days I've been trying out Subversion. Subversion is an open source version control system, like CVS, but so much better. It runs under many different platforms including *nix, MacOS and even Windows. I have my Subversion server running on Windows 2003.
I have also got Trac (also open source) running on my server, which is a web-based front-end to the versioning system, so you can see the changes and revisions you have made to your project. It also hosts a wiki and ticket system but I won't be using those much. Being able to see the actual diff-erences you've made, on each revision is one of the coolest things I've seen in a long time.
Both Subversion and Trac are very easy to set up, if you can follow instructions. You'll need quite a few different packages to get it all up and running, but they're very simple to install - especially under Windows. Namely: Apache, Python, Subversion, Python bindings for Subversion, Clearsilver, docutils, PySQLite and finally Trac itself. All of these are open source, and totally free of charge.
The SVN client I'm using is TortoiseSVN which works as a shell extension. By assigning a folder as the location for your working copy of an SVN repository, you can easily see which files you've changed, added, renamed etc. right there in Explorer using icon overlays.
Updating to/from the repository is incredibly simple, here's an example:

The reason for all this is to help me work on QuackScript's code in more than one location, as I usually do. It was cumbersome and annoying to have to zip up the code, upload it to a website, download it again, unzip, edit, re-zip etc. It was also impossible to keep track of which files had been updated, and where. I couldn't tell if I'd made any changes to the source on my PC at home or on my laptop. It was very confusing.
Unless I forget to commit some changes, I shouldn't have this problem anymore!
Posted in Computers at 09:36


Leave a comment