Managing the server side of collaborative work with Subversion

Nowadays, every experienced company or group of people dedicated to software development knows there are a lot of variables to handle when you work on a project from a collaborative point of view. The project leader has to handle every detail regarding time, costs, human resources, deadlines and quality of the delivered product. If you add to this picture a contractor, then your are adding more things to control, and, most of the time, more potential headaches.
There are many possible solutions for this scenario, but the one I’d like to address now is based on three main components: Subversion, Trac and a Mac. This proposal needs to be separated in two parts: on one hand we’ll have the server side, and on the other hand we’ll have the client side. We’ll now be focusing on the server side of the solution.
First, let’s describe briefly the two most unknown components of the trio. Subversion is a version control system, which aims to manage current and historical versions of almost any kind of file. It’s frequently used to manage source code, digital documents, web pages, etc. One of the remarkable strengths of this software is that it manages to handle multiple concurrent modifications to the files involved in the project, from different locations. By itself, it’s a very powerful tool for collaborative work and project control.
Trac on the other hand, is a web-based tool presented by its creators as an enhanced wiki, which aims to control (in a very simplified way) software development projects. It also serves as an issue tracking system, and was born to work seamlessly on top of Subversion. Trac brings to the version control of source code and documents the power and flexibility of the Web.
When they work together, Trac+SVN provides any company a strong set of tools designed to help control and monitor every single participant of any project, without even worrying about geographic location or work habits.
So, now that you’re interested in the potential of these simple but powerful tools, and you’d like to implement them (at least as a test) in your work environment, let’s review a few directives you need to know in order to set your Subversion server.
For this job you’ll need:
- A web server (it could be a Linux PC if you don’t have a Mac available for this task): Here, you’ll have to install both Subversion and Trac. Mac OS X already includes Subversion in most installations, so you’ll want to check if your server already has it.
- Subversion: This is an open source project, and you can get it and install it in so many ways that we’d need a single article to describe the task. The best source of information is at the Subversion Official Site.
- Trac: This is also an open source project. Its installation is a little bit more complicated than the Subversion one, but plenty of information about that process can be found at the Trac Official Site.
Once you have your server going, you’ll just have to set up a few accounts for the Trac and the repositories users. This could be done with the same tools that Apache uses to create regular user accounts (assuming that Apache is the installed web server).
The basic steps to follow for every new project, once your server is working, would include the following tasks:
- Create the repository for the project with the subversion commands.
- Import the initial source code (or set of documents) to the path of the repository.
- Initialize the Trac environment for your project with the Trac commands.
- Assign read/write permission for the repositories.
Following these general steps, you can set your Trac+SVN server in a day or less, and then began to work in a very effective way with as many programmers and analysts as you need. For this configuration you’ll just need you computer and two open source, industry leading, tools that, for no cost at all, will serve the purpose of your company for many years to come.
Products [Subversion and Trac]
Subscribe to keep up with the latest Apple news and rumors! -
Subscribe to our feed
Black Friday 2009
Black Friday is almost here! Gadgetell's got you covered with all the latest news on who's offering the best deals. Dangerous crowds? You're on your own.
Our new podcast: Meet...
We know. Podcasts are so last year - but this one you won't want to miss. Whether it’s a rumor that won’t die, a new product announcement, or just a really good Macintosh or iPhone app find that we have to let you know about, we’ll make sure it’s covered on Appletellcast.
iPhone App Reviews
iPhone Apps. They were great when the App Store was first announced and we could all pick and chose what we wanted, but the number is now overwhelming. Here at Appletell, we'll detail the great iPhone apps we find, and steer you clear from those that aren't worth it even if they're free.
iPhone Game Reviews
As Apple turns the iPhone into one of the most popular gaming devices, the staff of Appletell--gamers and Apple fans alike--are here to help you get the most entertainment value out of your app store purchases.






Already working with that tool, i can say it is a very powerful fusion Trac+SVN. at this time there are so many project developed with that kind of help.
on July 29, 2008 at 10:34 AM - LINKWe found Subversion when it was at version 0.17. We started with just a few developers using it, and then migrated our other developers over time. I can say without question that it has been one of the best decisions that we’ve made. Subversion works better than CVS ever did. We can detect corruption before it gets to be a problem, we get atomic commits, and directory versioning. All of which has made our development process and our ability to adapt to the customers’ ever-changing requirements that much easier.
on December 28, 2008 at 03:58 AM - LINKteam building