Wednesday, October 14, 2009

project management - the FOSS choices

Long time no post. Well, I've recently had to come up with a sourcecode management system, one which would work well for a growing buisiness. I took to researching the available options and here is a summary of my results. I checked out many options, but mainly two came out on top (and the only two I have time give a blog based comparison to).
  • Trac
  • Redmine
Trac is well known and quite good if you've only got one project. But given it's limitation's, it's had many offshoots now. Officially, trac is only subversion, but things are changing and branched projects exist for using git at least. Of keen interest though is that while there is a issue/ticket tracking system - there is only support for one project. There is a goal to change this in the future but we're all in the here and now.

Redmine, though. Here's the underdog. I mean who's heard of it, right? It's built on ruby on rails, if you care about that. For me, given prior knowledge of similar frameworks, that made it pretty easy to hop in and get some interesting things done, in a more proper way than the typical alternatives (these still are hackish things though). I'll go into those changes next post. But there's a few great features up for consideration that are built in to redmine:
  • Built in non hackish support for multiple projects and the management framework for users/groups.
  • tickets are cross project (after the option is clicked in the admin settings)
  • support for most any SCM (mercurial, git, bzr, subversion) out there
Now of considerable importance to me was mercurial. I view mercurial/git/bzr as mostly equivilent but their crossplatform support is anything but. mercurial has tortoisehg for the non cli window users though and works without a hitch other places though and thus is my SCM of choice for a business environment. What's that, why not subversion? Subversion, while useable sucks. The master repo goes down, well guess what - you can't check in your changes or have a VCS until its back up. Alternatively, this means you can work locally without having inet or being connected to that master server. Additionally, there's no tree support - this kills parallel development by multiple users. Well anyway, to recap -
I was motivated to find project management software which handled multiple projects, had ticket tracking, and SCM integration (focusing on mercurial) with users/groups working as expected all throughout the stack. I didn't find a complete and ready solution, but I got very close, and I'd be interested if anyone found something better. Until then, I thank the redmine crew, they've made an excellent system.

No comments:

Post a Comment