(编辑:这个问题现在已经过时了,因为Google Code现在支持git,而且我已经将协议缓冲区转换为Mercurial.但是,它仍然是普遍感兴趣的,IMO.)
我的C#Protocol Buffers Port使用github进行源代码控制,我开始非常喜欢使用git.但是,据我所知,github不提供任何项目管理工具:缺陷和功能跟踪,讨论,功能请求,文档等.鉴于我的隶属关系,Google Code将是一个自然的选择,但它似乎很奇怪在那里创建一个项目,但在github上托管源代码.
关于Fogbugz/Assembla的这个问题似乎主要集中在缺陷跟踪上.我想知道其他人在更"完整"的项目管理解决方案方面的经验.Fogbugz真的做了我需要的一切吗?(使用wiki for docs有其优点,虽然我也希望能够使用代码分发文档.)除了第一段中提到的显式特性之外,还有其他项目方面我应该考虑哪些我可能错过了吗?
这肯定会成为一个开源项目,虽然我宁愿不付钱,但我不介意需要支付少量费用.目前我是唯一的开发人员,但可能会发生变化,很多人可能会提交错误和功能请求.(换句话说,我希望并期望它很受欢迎,但是我在做大部分工作.)
以前我已经为各种开源项目做出了贡献,但是在运行一个非常明显和活跃的项目方面做得并不多.(MiscUtil目前仍在我的网站上"托管",偶尔发布 - 实际的源代码控制在我的本地NAS上.)
有人愿意分享他们的经历吗?
编辑:我现在正在考虑的另一个选择是Google Code项目(我真的很想忠于我的雇主)以及偶尔从git到svn的合并(至少,每次我发布时).这将允许非git用户也很容易掌握源代码.
如果您认为自己真的是唯一的开发者,那么Fogbugz将帮助您保持理智.Fogbugz是一款出色的产品,它可以构建有针对性的通信,可以将任何内容转化为案例(问题).它完成所有这些以及我见过的任何系统.
但它的定位是商业 - 用户和技术支持之间的有效沟通,提高时间表的可靠性,关注和优先处理正在进行的工作,分离内部和外部讨论,一些良好的报告来跟踪事情的处理.(关于我能想到的唯一的批评是它不会进行大小写阻塞和依赖性跟踪,这对那些深埋的bug非常有用.)
这个功能集很少能帮助您构建一个活跃的开源项目,通过开放的生动沟通和需求建立社区,并随着项目的发展让用户发展成开发人员.因此,如果你想要结束这一点,你可能真的想要这些轻量级跟踪系统中较不集中的通信渠道.
我还没有在项目中使用过Google Code,但在透明和开放的通信方面,它看起来像是对活跃的开源项目的良好支持.另外你已经知道了.如果您希望增加项目的参与度,Google代码就像是要走的路.
GitHub最近推出了自己的问题跟踪器 ; 我没有进行竞争分析来确定它如何衡量这个线程中提到的其他选项.
我使用GitHub和Lighthouse进行问题跟踪.与其他一些选项相比,它有点准系统,但与此同时,如果您只是想要一个轻量级工具,则不必过于担心.如果需要,它可以与GitHub集成,并且它也可以免费用于开源项目.
像往常一样,当有人问这个时,我就像我在这个问题中所做的那样提到了Redmine.我知道这个问题已经是"最佳答案",但我认为值得一提.
我们使用bitbucket.org,它不是GIT,它是Mercurial*,但它确实有每个分支的错误/问题跟踪等.
我认为将这些内容与您管理源代码的位置集成以便在提交消息中交叉引用诸如issue-number之类的内容非常有用.或修复了包含代码修订号的问题的消息.如果您选择单独的BTS(如Google代码),您将失去这一点.正如其他答案所述,Trac非常善于整合.
编辑:我应该说,对于我使用最广泛的开源项目,我们实际上是在:
Bitbucket(源代码管理)
Launchpad(用户错误报告,翻译管理)
自托管Trac(维基,项目和开发人员问题跟踪,源代码镜像)
谷歌代码(文件下载)
而且我知道这听起来很疯狂,但我们挑选并选择每项服务中最好的位.令人惊讶的是没有人抱怨.
*
无论如何,这在我看来更好,但请不要激怒我.
你考虑过Trac吗?
似乎对git-Trac集成有一个"热情"的评论.
我没有使用这些工具的个人经验,但您可能想要查看集成.