这个问题, 我提到我的假设是,rubyforge宝石更多的官方权威和稳定。叉。一个人在回答我的问题所说的,我的假设可能不准确。

你有什么观察到的?人们使用的审查,以释放初期和释往往是,只有把稳定稿rubyforge,或者做人释放较少的经常rubyforge由于其他原因(例如rubyforge是更多的麻烦)?

更新:这个问题是一点没有实际意义。 但如解散, , rubyforge宝石 都会被移动到rubygems.org.

有帮助吗?

解决方案

没有差别,据我可以告诉。

有在来自两个源的宝石质量/稳定性的巨大范围。有些是岩石固体,其它的是阿尔法预质量。

这真的取决于创业板项目本身。

说了这么多,虽然,GitHub的模型确实有助于各地的快速接通的问题。这是很容易叉一个项目,修复bug,并提交回包括原始出处。因此,至少在流行的项目,错误得到修复更快。因此,也许可以帮助项目更快地成熟,但我不知道。

其他提示

什么我注意到的是与GEMS的RubyForge上的整体质量相比经由GitHub的释放GEM的质量下降。

IMHO有针对此行为至少两个主要说明:

-

在此之前的GitHub Rubyist的99%的颠覆依赖性的。你可以说你想了解什么颠覆,但它肯定是更容易使用Git,每个人都知道主干/标签/分支机构布局比较使用。于是人们开始转向Git的。只是Subversion用户的超级限量片开始使用Git的知识水平应该和需要,我注意到,是人们开始忘记了标记。

从前有标签的时间。在颠覆人们使用基于特定的标签来发布新的版本,这样就可以很容易地检测您安装的版本,并且是稳定分支。

现在我看到吨库的下总是在GIT主分支发展。没有标签,没有稳定的分支。一般来说,当其中通过RubyForge的释放库有关注到部署步骤的更高的水平。

-

的GitHub使得没有发布步骤更麻烦。这就是说,你可以很容易地发布了新的创业板简单地推动gemspec到你的资料库。

在我看来,这可能简单可导致低质量。更多低技能开发的启动,因为它是为产生与珠宝(或类似的库)的新项目,并推动一个Git仓库一样容易散发宝石。他们不知道更多关于发布管理,向后兼容性,释放颠簸,释放维护。

我经常碰到封装为GEM只是因为开发人员忘了远程的.gemspec文件一个未完成的库。每次提交引起一个新的GEM为建立与没有明显的连贯性和一致性。

我绝对赞成“常发布”实践的,但是当它是有道理的。 Git的提供了一个极好的分支的支持,你不需要用吨无关的提交和释放一件未完成的,你调用库中的代码杂乱的主分支。

-

最后但并非最不重要的,我大概最讨厌的就是同一个GEM的无限重复。当RubyForge上是不成问题GEM源,这是很容易找到并安装一个新的项目。

IMHO,GitHub的引入复杂的不必要的层。首先,你必须既创业板通过RubyForge上可作为mygem并通过GitHub上的username-mygem。你经常需要花时间去找出哪些创业板是最新的,并拥有主发展。

此外,一些流行的创业板不再更新RubyForge上,许多人继续使用他们,只是因为RubyGems的不会通知你关于新版本。很容易理解,如果你安装了coolgem发布1.2.4和相同的库现已作为超级用户coolgem(2.0版本),RubyGems是没有足够的智慧告诉你一个新的更新是可用的。

-

现在它的时间为一个的免责声明。

我不跟RubyForge的比较说GitHub的用户产生糟糕的宝石。我是GitHub的用户和以前的我是一个RubyForge的用户也是如此。来自RubyForge的成功迁移到GitHub的GEMS十万不留在最终用户的“其中之一”中间状态。

最好的例子Rails的,但我可以提到许多其他的环球新兴市场,包括(但不限于)Capistrano的,角度来说,Hpricot,RedCloth ......所有这些库目前托管在GitHub上,如果你仔细看一下他们,你可以很容易地识别相同的质量水平如前。

最后但并非最不重要的,所有这些库继续通过RubyForge的释放作为主信号源,这样就不需要重新配置你的环境,以检测是否安装导轨,导轨或导轨。

此外,最终用户不受开发决策。就拿Capistrano的例如。一场政变几个月前勒公布了Jamis其对发展的承诺的终点。社区掌管的发展,避开了Jamis / Capistrano的到Capistrano的/ Capistrano的主存储库。如果创业板被释放了Jamis-Capistrano的,会发生什么?所有用户将不得不切换到新的创业板,并与很多的麻烦的新的存储库。

此情况下从未arised因为RubyForge的是并仍然是主Capistrano的输送轮毂。

-

在最后,我很遗憾注意到创业板的质量主要是由更多的人接近Ruby和RubyGems的没有知识的必要水平的整体下降。相同的适用于大量的Rails插件。

GitHub的不能被标记为的罪魁祸首。当复杂的事情变得更加容易和更多的人接近他们没有基本的知识,这是正常的,质量可以降低,因为复杂性是一个自然的选择过程。

不管怎样,还是有质量的Ruby社区优秀的水平。令人惊异的是看到Ruby开发者是如何致力于单元测试等专业的编程习惯。

可能不太稳定,稍微更最新:) -r

来回答你的问题最后:两者的资源所提到的(rubyforge,审查)是现在已经过时,因为gemcutter是新的,只有地方把.

Gemcutter是新的官方默认的获取并主持人:http://www.rubyinside.com/gemcutter-is-the-new-official-default-rubygem-host-2659.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top