Chinaunix首页 | 论坛 | 博客
  • 博客访问: 707746
  • 博文数量: 255
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 2811
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-09 13:29
个人简介

IT业行者,行者无疆

文章分类

全部博文(255)

文章存档

2011年(121)

2010年(134)

我的朋友

分类:

2010-09-24 13:15:15

开源,选择Google Code还是Sourceforge?(修订版)

本文出处:http://www.winxgui.cn/blog/?p=172 (版权声明)

一年前,我写下了“开源,选择Google Code还是Sourceforge?”,如今,Google Code又今非昔比了。抽时间好好整理了下,写一篇更新版,以免误导他人。下文也着重会就这一年来Google Code变化部分进行说明。

概要

提起Google Code,我需要非常惭愧地承认一点,我一开始的时候“把他看扁了”。初接触Google Code的时候,我简单地认为,Google Code只是个半成品,从各方面的功能来讲,似乎远不能够和Sourceforge的完备相比。不过,随着对Google Code了解的深入,我不能不承认我错了,Google Code再一次证实“简单是美”的法则:Google的服务似乎永远是看似简单(甚至让你觉得不够用),而实则非常完备。 

如果你有开源的计划,或已开源,或你有私人的项目希望有个完备的平台去管理他,那么本文值得你一读。到目前为止,我主导或参和了以下开源项目:

  • WinxGui: 项目管理员。如今Hosting在Google Code上()。
  • WTL:  项目成员。Hosting在Sourceforge上()。
  • VisualFC: 项目成员。是WinxGui的第三方可视化平台。Hosting在Google Code上()。 
  • DocX: 项目管理员。限于精力未维护。
  • ECUG: 项目管理员之一。不是个普通意义上的项目,而是Erlang China User Group(Erlang中国用户组)。Hosting在Google Code上(http://code.google.com/p/ecug/)。
  • Erlana: 项目管理员。这是个类似Google Analytics的项目。Hosting在Google Code上()。

选择Google Code,还是Sourceforge?从上面的介绍来讲,我的倾向已非常明显了。当然总体来讲,两者各有各的优势。而从进入的门槛来讲,使用Google Code会比Sourceforge容易非常多。

Google Code的优势和劣势

Google Code的优势

  • 速度第一。Google的服务以快速著称,Google Code亦不例外。当你上传新的Release时,你会特别感受到这一点。
     
  • 操作简洁。如果Sourceforge和Google Code提供了同样的功能,那么我能毫不思索的讲,Google Code比Sourceforge快捷易用。我们后文将周详比较各个功能。

Google Code的劣势

  • 容易被盾。以我的经验,Google Code被盾比较频繁。这导致我有时无法浏览Bug列表,发布新的Release等等。所幸的是,Google Code的SVN连接从来没有出现访问障碍。因此这不算太大的问题。另外,按Google Code的说法,有些功能能在命令行进行,而不必到Web上,不过我本人尚未进行周详的验证。
     
  • 100M的容量限制。让人振奋的是,原先Google Code限制每个项目的SVN空间大小不能超过100M,目前已取消该限制。不过可惜发布的所有Release总大小仍然不能超过100M。
     
  • 数据统计功能强大但复杂且不实用。原先Google Code基本无数据统计功能。而如今,Google Code集成对Google Analytics的支持,借助Google Analytics的强劲功能,使得他的统计功能一下子变得比Sourceforge还要强悍!不过,为什么我这里仍然称Google Code的数据统计功能不足呢?这是因为,对于一个Project而言,你的Release的下载情况是个关键参考量。而Google Code恰恰由于Google Analytics的统计方式缺陷,只能统计了html页面的访问量,而无法统计zip包的下载量。虽然Google Code也引入了DownloadCount概念(例子参见downloads/list)。不过仅仅提供一个下载总数,相对Sourceforge而言,还是弱了点。

Sourceforge的优势和劣势

Sourceforge的优势

  • 更多的受众,已形成第一开源社区。简单统计结果表明,Sourceforge上大约每5分钟就有一个新的Release。也就是说,一天大约有300个新的发布(这不是精确的统计,只是简单估算)。
     
  • 功能更加完备。目前来看,Google Code在功能上并不比Sourceforge成熟。如果Google Code是个完整、快捷、功能足够的平台,那么Sourceforge则是个方方面面均已相当完备的研发平台。

Sourceforge的劣势

  • 操作繁复,速度较慢。

周详功能对比

下面我们展开来对比一下两者的功能:

  • 建立帐号。Google Code只要你有Gmail帐号即可。Sourceforge需求你进行注册。而且你发现,Sourceforge的注册流程十分罗嗦。
     
  • 建立项目。Google Code只要你简单填写一下项目的相关信息(),仅一个页面即可完成申请。而Sourceforge的新Project申请流程是繁复的,有非常多的下一步,并需要你阅读一些英文细节。另外,你的项目并不马上生效,而是需要进过审批。不出意外的话,在申请之后的第二天再上Sourceforge,你的项目应该通过审批了。
     
  • 代码管理。Google Code仅支持SVN库,Sourceforge支持SVN和CVS。原先Google SVN限制在100M内,目前已去除该限制。你能邮件订阅代码库发生的变化(当然,Sourceforge也能)。
     
  • 代码库的权限管理。Google Code的代码库权限管理非常简单,在你登陆后,将显示Google Code为你自动生成的随机密码。通过你的用户名和这个随机密码,你就能访问SVN代码库,对其进行修改。sourceforge推荐使用putty套件,周详参考sourceforge上的说明,总的来说,相当繁复。
     
  • 发布版本。Google Code限制所有Release包不能超过100M,单个Release不能超过10M。Sourceforge尚未见到明确的限制。
     
    Google Code发布一个新的Release流程,仍然只需要一个页面即可完成。你只需要选择上传的文件,并为该文件加一些预定义的标签(用于告诉别人你的Release支持的平台或其他信息,这些标签Google Code已预定义部分,项目管理人员亦能定义),确认即开始上传。特别地,如果一个Release被打上 Featured 标签,那么他将出目前项目首页。
     
    Sourceforge的流程则比较复杂:
    • 通过ftp上传你要发布的文件。上传地址:ftp://upload.sourceforge.net/incoming,这个过程匿名进行。上传的文件在你后续的步骤中进行“认领”,如果某个包长时间没人认领,Sourceforge将清理之。
    • 进入Sourceforge。用你的Sourceforge帐号登陆。
    • 进入项目主页,进入Admin -> FileReleases。
    • 选择已有的Package或新建Package,向该Package中添加一个Release。在你的项目发布的文件比较多(不是发布的历史版本多,而是一次发布的文件多,你可能希望对他们进行归类)时,Package能更加有条理地管理这些文件。
    • 为该Release添加ReleaseNote和ChangeLog。确认。
    • 认领你上传到ftp上的文件。打上勾,确认即可。
    • 为你发布的文件添加说明(支持的平台、包的格式及其他规格)。
    • 如果有人关注这个项目的Release,最后一步,你能向这些人发送信息,告诉他们发布了新的Release。这一步非常有意思,是Google Code不能做到的。
       
  • Bug报告。Google Code中的issues,Sourceforge的tracker。Google Code的issues制定性非常好,并可对issues的变化进行订阅。
     
  • 论坛。Google Code中并不直接提供论坛功能,当然,这是因为他推荐你使用强大的Google Groups。Sourceforge则除了提供给用户的论坛(并把用户论坛分为两个,一个讨论产品功能的,一个属于头脑风暴型的开放式讨论),也提供研发者专用的论坛(对非项目成员不可见)。
     
  • Project Web。这一点上两者各有千秋。
     
    Google Code中没有提供项目主页,而是颇具创意的提供了一个Wiki Pages。值得一提的是,Google Code的Wiki借用SVN来管理版本,构思巧妙之极(周详参见“Unix搭积木思想和Google Code Wiki”)。由于Google Code的SVN支持邮件通知功能,Wiki顺理成章地继承了该功能。
     
    在Google Code上做个wiki页面,然后到source上看看,会发现上面多了wiki目录。进去后,你就就能看到你的wiki页面原始码被放到了这里。这样做的好处是,你不只是能在线编辑wiki页面,还能本地用所有工具修改他。我这样做了。
     
    Sourceforge提供了项目主页,项目主页的地址是:”项目名.sourceforge.net”。你能利用这个网址来宣传项目、提供项目信息。这个空间是是php+mysql的,并且你能通过远程Shell控制,极其灵活。
     
  • 团队成员管理。Google Code你能通过添加其他Gmail帐号为项目成员(Members)或管理员(Administers),但似乎还不能进行更加周详的权限管理。Sourceforge提供了非常精细的项目成员的权限管理。
     
  • 下载和访问统计。Google Code内置了Google Analytics的支持,并简单提供了Release的下载计数(DownloadCount)。Sourceforge提供了最近7日、最近2个月、年、全部访问/下载统计。非常周详。
     
  • 软件截图(ScreenShots)。能让用户迅速获得项目的第一印象,吸引眼球。Google Code无此功能。
阅读(983) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~