【问题标题】:Why does 'bundle' install production gems on my development machine?为什么“捆绑”会在我的开发机器上安装生产 gem?
【发布时间】:2011-08-06 00:01:23
【问题描述】:

Gemfile 说:

gem 'sqlite3', :groups => [:development, :test]
gem 'mysql2', :group => :production

然而,当我在我的开发机器上输入 bundle install 时,所有 gem 都已安装。

我的设置有什么问题?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 gem bundler


    【解决方案1】:

    Bundler 的目的是在部署之间创建一致的 gem 环境。不幸的是,即使没有加载或不需要 Gem,它们也可以交互。因此,为了获得最大的一致性,应该安装所有的 gem,即使它们不是必需的。

    但是,如果您不想一直安装所有 gem,可以使用 bundle install --without 选项。

    【讨论】:

    • FWIW:我现在在我的开发机器上使用bundle install --without production。这是一个被记住的特征,所以--without production 只需要输入一次。
    • 以后在生产中会发生什么?如果您只安装 gem 而不进行生产,并且这是一个被记住的特性,那么当您准备好部署时,您如何在生产中安装 gem?
    猜你喜欢
    • 2014-02-01
    • 1970-01-01
    • 2016-09-03
    • 2012-06-02
    • 2012-06-30
    • 2016-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多