Distributed issue tracking – the next big thing
For a few years distributed revision control systems have been picking up speed especially in free software projects, but increasingly so in companies and organisations as well. While the problem of “disconnected” working on code was solved by the distributed revision control model, what remained was the fact that issue tracking still couldn’t be done in a truly distributed manner.
This is where distributed issue tracking comes in. The idea is to keep the issue data under version control like you would keep code – exploiting the existing features of distributed revision control systems to allow truly disconnected and distributed work on issues. Depending on implementation, the issues are either kept in the same branch (or project) as the code (thus being merged when the code gets merged too), or in a separate branch. Both approaches have their pros and cons.
Interesting distributed issue tracking projects I’ve run into so far are:
- Bugs Everywhere – Python, GPLv2+
- DITrack – Python, BSD
- DisTract – Javascript (a browser hack?), BSD
- Ditz – Ruby, GPLv3+, has some special support for git.
My personal favorite (and the most promising one) among these seems to be Ditz. I believe they could use a helping hand, so if you know Ruby here’s your chance to contribute to a potentially great project.
Other people have blogged about the subject as well:
- Eric Merritt, on 2007-05-02 and 2007-07-25.
- Kate Rhodes
There is even a mailing list named dist-bugs “to investigate and develop distributed bug tracking systems”, but it seems quite dead.
[ To be honest, for now I still prefer a simple TODO file - that actually gets things done, and you won't spend too much time twiddling with issue management. Especially on small projects. But I expect this to change as distributed issue tracking matures in features and hopefully becomes as easy & fast to use as git... ]
One more project to the list, git-issues: http://github.com/jwiegley/git-issues/tree/master
ticgit