很快我们将开始开源(py + qt)项目,该项目应该是多平台的(我们使用FreeBSD作为本机平台)并且我们不确定使用哪个DVCS /托管
过去我们使用darc很长一段时间,但由于没有足够的公共托管服务而离开了它。与Monotone玩了一段时间 - 设计精美,但今天主要是利基。 Fossil很不错,但它使用的是非标准的wiki,它的跟踪器功能齐全,但我们期待更多。
考虑到我们不会处理类似内核的项目,我们不会使用我们认为太复杂的Git来处理它,特别是对于可能使用Windows操作系统并且更喜欢GUI工具的潜在贡献者。
所以,故事来自Bazaar / Launchpad和Mercurial / Bitbucket ......
以下是我们聚集在一起的一些赞成/赞成,但是如果我们错过了可能有助于我们做出决定的事情,我想听听......
Bazaar pro / cons:
最后一点可能并不重要'因为有缺点并且有colo-branches插件,所以可以获得相同/相似的功能。
我们在Bazaar中发现的最有问题的怪癖是它的修订号方案和问题,如果一个人从特征分支推进上游会改变revid,就会出现这个问题。
使用Launchpad时可能是一个较小的问题......
就Launchpad而言: - 它有非常好的错误跟踪器与电子邮件界面 - 它(也许)比Bitbucket更面向项目 - 与Bitbucket没有私人回购 - 项目没有wiki - bug(https://bugs.launchpad.net/launchpad/+bug/240067)已超过3年且仍处于“低优先级”状态。 LP是{LP,Sourceforge,Bitbucket,Google,Github}中唯一没有这个功能的人,它真的很糟糕,而且还有很好的托管解决方案。
我们在另一个阵营找到了什么......
Mercurial是:
然而,正如我们所认为的那样,我们最喜欢的Bazaar是由于revno:hash schema而没有改变revid的麻烦。+ / p>
就Bitbucket而言:
最后,假设有一些我们感兴趣的项目在Git @github下,所以我们想使用单个DVCS来帮助我们与git @ github项目互操作。
我们发现bzr-git插件非常强大且没有hg-git的经验。
虽然有bzr-hg插件(不像bzr-git那么成熟),但我们不知道像hg-bzr这样的东西,除了hg的转换扩展,它完成了hg-bzr转换的工作。
在决定两者时,我们确实错过了重要的特征吗?
最后,我们使用DVCS满足我们的所有需求(简单的项目,着作......),我们宁愿选择一个可以满足我们所有目的的DVCS /托管,并且可以为git(hub)项目做贡献同样。
你推荐什么?
答案 0 :(得分:2)
在Bazaar:
您可以避免修订号被setting append_revisions_only
in branch.conf
重新编号的问题,这将确保人们只合并到主干,而不是切换主干。
我喜欢bzr-colo处理命名的colocated分支。
我当然希望看到Launchpad get wikis。它现在被分配并且正在进行中,所以它很快就会完成。
答案 1 :(得分:2)
更新:查看此comment可让我们更轻松地放弃bzr / LP并拥抱hg / bitbucket。