并行安装宝石(更快)

时间:2016-01-14 20:53:48

标签: ruby rubygems bundler

Bundler有一项功能,您可以使用--jobs选项install gems in parallel。例如:

bundle install --jobs 4

RubyGems是否存在类似的功能?

我希望能够以同样的方式运行gem update

根本问题是需要FOREVER更新我的全球系统宝石。

1 个答案:

答案 0 :(得分:3)

不,此功能目前不存在。但是,在RubyGems上有一个关于并行下载宝石的未合并拉取请求,这些请求可能在您阅读此内容时进行集成:https://github.com/rubygems/rubygems/pull/649。但是,这个PR没有解决像Bundler那样并行安装宝石的问题。因此,某些功能可能很快就会出现。

也就是说,告诉RubyGems在安装过程中做更少的事情是加速安装的好方法。有三个相关的CLI选项值得一看。

  1. 不要安装文档:

    gem update --no-document
    
  2. 不要尝试升级已达到版本要求的宝石:

    gem update --conservative
    
  3. 不要升级任何已满足版本要求的依赖项:

    gem update --minimal-deps
    
  4. 我建议只安装没有文档的宝石。运行全局gem update背后的意图通常是“只给我所有最新的东西”,因此限制你正在更新的宝石将与目标冲突。但是,许多人不会查看为其安装的宝石生成的RDoc,并且可以节省大量的安装时间。

    http://guides.rubygems.org/command-reference/#gem-update