views:

6810

answers:

11

My C# Protocol Buffers Port uses github for its source control, and I'm beginning to really enjoy using git. However, as far as I can tell, github doesn't provide any project management tools: defect and feature tracking, discussions, feature requests, docs etc. Given my affiliations, Google Code would be a natural choice, but it would seem odd to create a project there but host the source on github.

This question about Fogbugz/Assembla seems to mostly focus on the defect tracking. I was wondering what experiences others have had when it comes to a more "complete" project management solution. Does Fogbugz actually do everything I need? (Using a wiki for docs has its advantages, although I also want to be able to distribute documentation with the code.) Beyond the explicit features mentioned in the first paragraph, are there other project aspects I should be considering which I may have missed?

This will definitely stay an open source project, and although I'd rather not pay I don't mind if a small fee is required. Currently I'm the only developer, but that may change and there may very well be lots of people filing bugs and feature requests. (In other words, I hope and expect it to be popular, but with me doing most of the work.)

Previously I've contributed to various open source projects, but haven't done much in the way of running a very visible and active one. (MiscUtil is currently still "hosted" on my website, with occasional releases - the actual source control is on my local NAS.)

Anyone care to share their experiences?

EDIT: Another option I'm now considering is a Google Code project (I really would like to be loyal to my employer) and an occasional merge from git to svn (at the very least, every time I do a release). This would allow non-git users to get hold of the source easily too.

+4  A: 

Did you considered Trac ?

There seem to be an "enthusiastic" review of a git-Trac integration.

I have no personal experience with these tools, but you may want checking out that integration.

VonC
The Fogbugz/Assembla question I referenced seemed to imply that Trac was a bit behind FogBugz. I also like the idea of hosted project discussions (although I could certainly use Google Groups for that if necessary).
Jon Skeet
+6  A: 

We use bitbucket.org, which is not GIT, it's Mercurial* , but it does have bug/issue tracking per branch etc.

I think it can be very useful to integrate these things with the place you manage your source code for cross-referencing things like issue-number in a commit message. Or Fixed message for an issue containing the code revision number. You would lose this if you chose a separate BTS like Google code. As mentioned in other answer, Trac is really good at the integration thing.

Edit: I should say that for my most widely used open source project, we do actually have it at:

  1. Bitbucket (source code management)
  2. Launchpad (user bug reporting, translations management)
  3. Self hosted Trac (wiki, project and developer issue tracking, source code mirror)
  4. Google code (file downloads)

And I know this sounds insane, but we pick and choose the best bits out of each service. And surprisingly no one complains.

* which is better in my opinion anyway, but please don't flame me.

Ali A
No flaming here - I haven't used Mercurial, so can't comment. I think if I were going to actually *move* the source hosting, I'd just go straight to Google Code and svn, which I'm already comfortable with. I *think* I want to keep the github repository - but see my question edit...
Jon Skeet
In my opinion, SVN is the main weakness of Google code. But as you say, it's all about what you are comfortable with.
Ali A
Also edited to reflect my own personal usage.
Ali A
I know it's silly, but I'd have trouble commiting any data I really want to save to a server named "bitbucket".
T.E.D.
+11  A: 

I use GitHub along with Lighthouse for issue tracking. It's a little barebones compared to some of the other options, but at the same time it works very well if you just want a lightweight tool you don't have to worry too much about. It can integrate with GitHub if you want, and it's also free for open source projects.

Marc Charbonneau
+19  A: 

If you're thinking that you'll really be the only developer, Fogbugz will help you keep your sanity. Fogbugz is a great product, It builds focused communications and can turn anything into a case (issue). It does all that as well as any system I've seen.

But its orientation is commercial -- efficient communication between users and tech support, improve reliability of schedules, focus & prioritize what's being worked on, separate internal & external discussions, some good reporting to track that things are getting handled. (About the only criticism I can think of is it doesn't do case blocking and dependency tracking, which is really useful for those bugs buried deep.)

Little of this feature set will help you build an active open source project, with open lively communication and the need build a community and have users evolve into developers as the project grows. So if that's where you want to end up, you may really want the less focused communication channels of one of these lightweight tracking systems.

I haven't used Google Code on a project yet, but in terms of transparent & open communication, it looks like a good support for an active open source project. Plus you already know it. If you want to grow the involvement in your project, Google code looks like the way to go.

Paul
Thanks for that - all useful stuff. There's an additional benefit to Google Code - if it's missing a feature, I'm more likely to be able to make it happen :) (I'm sure Fogbugz et al take feature requests seriously, but with Google Code I can work on the system itself in 20% time...)
Jon Skeet
+1  A: 

I use github and google code in some places. Google code's issue tracker is decent enough, but I can't deal with subversion.

Take a look at my java memcached client for an example of this -- particularly the source tab at the top.

Dustin
Cool. That looks like a really good solution. I may still clone to subversion to make it easier for those who want to use that - I want to be as inclusive as possible.
Jon Skeet
I'd imagine github's download stuff is enough for anyone who'd want subversion. Anyone who does stuff more advanced than download the latest version from your svn repo is probably already using git. :)
Dustin
A: 

At work we use FogBugz and it's by far the best tool of its type in my opinion. I would use it for the non-profit projects I work on, except it's so expensive beyond 2 users.

For the non-profit projects, we use Lighthouse for issue tracking. It's alright for what it costs, and frankly I can't really find any suitable alternatives within its price range. Trac's issue tracking is little better than Bugzilla's...I know a lot of folks love Trac but I find it very inflexible. Trac's deficiencies led us to Lighthouse.

My non-profit projects are looking possibly at moving to Bitbucket. In addition to the issue tracking, it would let us consolidate our repositories over there from beanstalkapp.com, as well as, adding a wiki.

That all being said, if FogBugz-on-Demand had pricing even remotely similar to Lighthouse.app for small user counts, I'd move us over there in a heartbeat. When you use FB at work and then Lighthouse.app at night...using Lighthouse feels like your arm has been chopped off.

jasonjwwilliams
+8  A: 

As usual when someone ask this, I mention Redmine as I did in this question. I know the question has already its "best answer" but I think it is worth mentioning.

Keltia
+1  A: 

Have you considered CodePlex?

Marcin Hoppe
I hadn't, but in the end I've gone with Google Code *and* github, developing against github and pushing to svn when appropriate.
Jon Skeet
+1  A: 

Mingle supports git via mingle_git plugin. Mingle has a free community license for open source projects.

Antti Tarvainen
+1  A: 

I too use github with Lighthouse. And if your commit message contains something like

[#32 state:resolved]

Lighthouse will resolve ticket #32 against the commit, which I find quick and useful. Other than that, Lighthouse is a bit, er, light on features.

kevinrutherford
+11  A: 

GitHub recently introduced an issue tracker of their own; I haven't done a competitive analysis to determine how it measures up to other options mentioned on this thread, though.

Greg Campbell