首先让我告诉你除了SVN之外我从未使用过任何东西,而且我也是Windows用户.
我有几个简单的开源项目,其他的正在我们开心的时候发布他们的源代码.无论哪种方式,我都在考虑使用Google Code和SVN来共享我的项目的源代码,而不是在我的网站上提供源代码的链接.这一直是一个痛苦,因为我每次发布新版本时都必须更新二进制文件和代码.这也可以帮助我备份我的代码,而不仅仅是我的本地机器(我曾经运行过本地Subversion服务器).
我想从这样的服务中获得的非常简单...... 我只想要一个存储我的源代码的地方,人们可以根据需要下载它,这样我就可以控制修订并提供一个简单易用的问题/ bug系统.可以提交错误和类似的东西.我想他们俩都有这个.
但我不想在他们的网站上托管任何二进制文件.我希望将它托管在我的网站上,以便我可以使用自己的脚本控制下载统计信息.我也不需要维基页面,因为我更喜欢在我自己的网站上拥有所有文档.这些服务中的任何一种都提供了一种"禁用"wiki和下载等功能的方法,而不是为我的项目显示它们吗?
现在,我确信使用带有SVN和GitHub的谷歌代码有很多优点和缺点(当然),但这对我来说很重要,为什么我喜欢它们:
Google代码:
与任何Google页面一样,复杂性几乎不存在
每个人(或几乎每个人)都有一个Google帐户,如果人们想要使用问题系统报告问题,那就太好了
GitHub的:
可能(也可能不会)比谷歌的页面更复杂(虽然对我来说不是问题)但......
...有比Google服务更漂亮的界面
它需要人们在GitHub上注册以发布问题
我喜欢这样的事实:使用Git,你在本地有自己的版本(我可以使用TortoiseGit吗?)
基本上就是这样.不多,我知道......
您可以告诉我有关每个站点/软件的其他常见优缺点吗?请记住,我的项目很简单,我可能是唯一一个将在这些存储库上开发这些项目的人(或者可能不是,但现在我是).
Google Code现在支持Mercurial.Mercurial应该为您提供Git的大部分好处,但您可以获得Google Code的成熟度.你也可以选择在那里使用subversion.
Google Code Project Hosting 现在支持Git.
GitHub有两个主要优点:
它使用git(duh!)
这是一个非常"社交"的环境.
GitHub可以很容易地为其他人的代码做出贡献,并且很容易将它们集成回来.还有许多内置的很酷的post-commit钩子; 例如,当我提交到我的某个存储库时,会向我的Google网上论坛公告列表发送一封电子邮件,并将一个机器人弹出到irc频道,提供更改摘要,然后再次弹出.我知道至少有一个 CI服务在GitHub上提交(或者更确切地说是推送).
如果你计划这是一个相当小的独立项目,那么你可能不会发现大多数GitHub的功能都很有用.
我自己对TortoiseGit没有特别积极的体验.我真的很喜欢这个git模型,但当我尝试在Windows上使用它时,我的一切感觉都很奇怪.我经常最终只使用cygwin版本,但即使这样也远非完美.
老实说,对于你想要开源的小项目,我可能只是托管谷歌代码并暂时处理SVN.如果你已经是一个git专家可能会有所不同,但是我不确定学习曲线对于一个基于Windows的小项目是否值得(特别是考虑到可能被关闭的Windows开发人员#它).
这些是Google Code的答案(我使用并且非常满意):
但我不想在他们的网站上托管任何二进制文件
所以不要 - 谷歌服务条款中没有任何要求你这样做.
我也不需要维基页面
维基页面与GC站点上的几乎所有选项卡一样,可以被禁用和隐藏.
为什么不为您的项目创建一个Google代码页(大约需要2分钟而且它是免费的)并使用管理选项来查看它是否符合您的要求?
Github现在支持Subversion http://slashdot.org/submission/1232328/