We've been opening up our code a bit lately. I know that sounds weird coming from an open source company, but we've traditionally been very, very cautious with who
gets a "commit bit" to our products. Only two or three people outside Best Practical have commit rights to RT. SVK has a richer cast of characters. With Jifty, we've fully embraced Audrey Tang's methodology. When she's feeling confrontational, she calls it "Anarchistic Development." When she's talking to folks with a more Web 2.0 bent, she calls it "Wiki Style Development". Just about anybody who shows up has commit privileges thrust upon them. It's worked amazingly well for Pugs. So we figured we'd try it for Jifty.
If we were hosting Jifty somewhere like SourceForge or Google Code, we could just add people by email address and the system would take care of sending them email, getting them a password and so on. We really prefer to host things locally, which left us in a bit of a vacuum. We couldn't find a single good tool for handing out commit bits and managing projects in a Subversion repository.
I bet you can tell where this is going.
We've got another new project.
Ladies and Gentlemen, please allow me to present CommitBit, a subversion access management system with built in support for a "code.example.com" project directory.
CommitBit lets you, the administrator, set up repositories and projects through a simple web interface. You can grant an individual a commit or admin bit to a specific project just by typing his or her email address into CommitBit's web ui. Project administrators can, somewhat unsurprisingly, grant commit or admin bits to others through the same interface. CommitBit takes care of notifying the new project member, setting up their password and so on.
On the backend, CommitBit can set up new subversion repositories or work with preexisting local repositories. It manages a bunch of files so you don't have to:
- htpasswd files for svn over WebDAV
- passwd files for svnserve
- authz files that work with both
- an apache2 configuration snippet
On the "codedot" side, you a project listing, the ability to spotlight whatever's currently hot and per-project overview pages with lists of committers, pointers to your bug tracker, wiki, mailing lists, Subversion repository, repository browser and so on.
If you're interested in CommitBit, you can find out more about it at code.bestpractical.com: