本节简单介绍一下免费的SVN空间,在学习SVN的过程中可能会遇到SVN空间问题,在这里简单和大家讨论一下,希望通过本节的学习,大家对SVN空间有更加深刻的认识。
一直想找一个免费的CVS或者SVN空间可以把自己业余的东东传上去。毕竟放在自己机器上不够稳妥,放在公司服务器又不方便。直到遇见了http://unfuddle.com/home
正如网页所说Unfuddleisasecure,hostedsoftwaredevelopmentenvironmentandprojectmanagementsolutionforsmallsoftwaredevelopmentteams.
它集成了subversion代码管理,进度管理,协同工作,BUG管理……免费版本有15M空间,对于个人的小项目还是足够。至少BlindBoy已经完全传上去拉……
GoogleCode和Sourceforge
提起GoogleCode,我需要很惭愧地承认一点,我一开始的时候“把它看扁了”。初接触GoogleCode的时候,我简单地认为,GoogleCode只是一个半成品,从各方面的功能来讲,似乎远不能够与Sourceforge的完备相比。但是,随着对GoogleCode了解的深入,我不能不承认我错了,GoogleCode再一次证明“简单是美”的法则:Google的服务似乎永远是看似简单(甚至让你觉得不够用),而实则非常完备。
如果你有开源的计划,或者已经开源,或者你有私人的项目希望有个完备的平台去管理它,那么本文值得你一读,因为这是我在这方面的一些心得。到目前为止,我开源了WINX和DocX已经4个月多了,和GoogleCode、Sourceforge均有了较长时间的接触,希望借机会和大家交流下。
选择GoogleCode,还是Sourceforge?总体来讲,两者各有各的优势。从进入的门槛来讲,使用GoogleCode会比Sourceforge容易很多。
GoogleCode的优势与劣势
GoogleCode的优势
速度第一。Google的服务以快速著称,GoogleCode亦不例外。当你上传新的Release时,你会特别感受到这一点。
操作简洁。如果Sourceforge和GoogleCode提供了同样的功能,那么我可以毫不思索的讲,GoogleCode比Sourceforge快捷易用。我们后文将详细比较各个功能。
GoogleCode的劣势
容易被盾。以我的经验,GoogleCode被盾比较频繁。这导致我有时无法浏览Bug列表,发布新的Release等等。所幸的是,GoogleCode的SVN连接从来没有出现访问障碍。因此这不算太大的问题。另外,按GoogleCode的说法,有些功能可以在命令行进行,而不需要到Web上,但是我本人尚未进行详细的验证。
100M的容量限制。GoogleCode限制每个项目的SVN空间大小不能超过100M,发布的所有Release亦不能超过100M。由于目前我的项目刚刚开始,这一点还不是一个障碍。但是这是一个比较容易到达的数字。可以预见,你的项目要面临搬家的风险。我试图寻找办法来清除一部分SVN历史版本数据、删除一些历史Release版本,未果。
无数据统计功能。你无法得知你的Release被下载的情况(下载总数以及趋势)。
Sourceforge的优势与劣势
Sourceforge的优势
更多的受众,已经形成第一开源社区。简单统计结果表明,Sourceforge上大约每5分钟就有一个新的Release。也就是说,一天大约有300个新的发布(这不是精确的统计,只是简单估算)。
功能更加完备。目前来看,GoogleCode在功能上并不比Sourceforge成熟。如果GoogleCode是一个完整、快捷、功能足够的平台,那么Sourceforge则是一个方方面面均已经相当完备的开发平台。
Sourceforge的劣势
操作繁复,速度较慢。
详细功能对比
下面我们来看一下SVN空间介绍中展开来对比一下两者的功能:
建立帐号。GoogleCode只要你有Gmail帐号即可。Sourceforge要求你进行注册。而且你发现,Sourceforge的注册流程十分罗嗦。
建立项目。GoogleCode只要你简单填写一下项目的相关信息(http://code.google.com/hosting/createProject),仅一个页面即可完成申请。而Sourceforge的新Project申请流程是繁复的,有很多的下一步,并需要你阅读一些英文细节。另外,你的项目并不马上生效,而是需要进过审批。不出意外的话,在申请之后的第二天再上Sourceforge,你的项目应该通过审批了。
代码管理。GoogleCode仅支持SVN库,Sourceforge支持SVN和CVS。GoogleSVN限制在100M内,Sourceforge则尚未见到明确的容量限制。
代码库的权限管理。GoogleCode的代码库权限管理非常简单,在你登陆后,http://code.google.com/hosting/settings将显示GoogleCode为你自动生成的随机密码。通过你的用户名和这个随机密码,你就可以访问SVN代码库,对其进行修改。sourceforge推荐使用putty套件,详细参考sourceforge上的说明,总的来说,相当繁复。
发布版本。GoogleCode限制所有Release包不能超过100M,单个Release不能超过10M。Sourceforge尚未见到明确的限制。
GoogleCode发布一个新的Release流程,仍然只需要一个页面即可完成。你只需要选择上传的文件,并为该文件加一些预定义的标签(用于告诉别人你的Release支持的平台或其他信息,这些标签GoogleCode已经预定义部分,项目管理人员亦可以定义),确认即开始上传。特别地,如果一个Release被打上Featured标签,那么它将出现在项目首页。
SVN空间中Sourceforge的流程则比较复杂:
通过ftp上传你要发布的文件。上传地址:ftp://upload.sourceforge.net/incoming,这个过程匿名进行。上传的文件在你后续的步骤中进行“认领”,如果某个包长时间没人认领,Sourceforge将清理之。
进入Sourceforge。用你的Sourceforge帐号登陆。
进入项目主页,进入Admin->FileReleases。
选择已有的Package或者新建Package,向该Package中添加一个Release。在你的项目发布的文件比较多(不是发布的历史版本多,而是一次发布的文件多,你可能希望对他们进行归类)时,Package可以更加有条理地管理这些文件。
为该Release添加ReleaseNote和ChangeLog。确认。
认领你上传到ftp上的文件。打上勾,确认即可。
为你发布的文件添加说明(支持的平台、包的格式及其他规格)。
如果有人关注这个项目的Release,最后一步,你可以向这些人发送信息,告诉他们发布了新的Release。这一步很有意思,是GoogleCode不能做到的。
Bug报告。GoogleCode中的issues,Sourceforge的tracker。由于用的还不算多,暂时不做详细比较。
论坛。GoogleCode中并不直接提供论坛功能,当然,这是因为它推荐你使用强大的GoogleGroups。Sourceforge则除了提供给用户的论坛(并把用户论坛分为两个,一个讨论产品功能的,一个属于头脑风暴型的开放式讨论),也提供开发者专用的论坛(对非项目成员不可见)。
ProjectWeb。GoogleCode中没有提供项目主页,而是颇具创意的提供了一个WikiPages。Sourceforge提供了项目主页,项目主页的地址是:"项目名.sourceforge.net"。你可以利用这个网址来宣传项目、提供项目信息。这个空间是是php+mysql的,并且你可以通过远程Shell控制,极其灵活。
团队成员管理。GoogleCode你可以通过添加其他Gmail帐号为项目成员(Members)或管理员(Administers),但似乎还不能进行更加详细的权限管理。Sourceforge提供了非常精细的项目成员的权限管理。
下载与访问统计。GoogleCode无此功能。Sourceforge提供了最近7日、最近2个月、年、全部访问/下载统计。非常详细。
软件截图(ScreenShots)。可以让用户迅速获得项目的第一印象,吸引眼球。GoogleCode无此功能。本节介绍SVN空间完毕,请关注本节其他相关报道。
【编辑推荐】