ruby – 如何在开发过程中将Bundler / Gemfile配置为使用不同的gem源?

前端之家收集整理的这篇文章主要介绍了ruby – 如何在开发过程中将Bundler / Gemfile配置为使用不同的gem源?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个Sinatra应用程序,需要我在本地开发的另一个宝石.我在配置Bundler时在开发过程中使用我的本地gem代码,但是在制作中却是由我生产的gem代码.

理想情况下,我可以做这样的事情,但是Bundler不允许你两次指定相同的宝石:

# Doesn't work:
group :development do
  gem 'awesome',:path => "~/code/awesome"
end

group :production do
  gem 'awesome',:path => "vendor/gems/awesome-0.0.1"
end

在此期间,我已经采取了手工方式的宝石和更新宝石源在Gemfile每次我部署,这是一个麻烦.我的工作流程是这样的:

>在开发过程中指向我的本地宝石(gem’awesome’,:path =>“〜/ code / awesome”)
>准备好部署时,将gem打包成供应商/宝石
>更新Gemfile指向vendored gem(gem’awesome’,:path =>“vendor / gems / awesome-0.0.1”)
>运行bundle install(更新Gemfile.lock)
>部署代码
>返回步骤1.

什么麻烦!我想做一些更简单的事情,而不是简单地编写Rake任务来自动化我的当前设置.

这种情况下最好的工作流程是什么?

解决方法

有一个新功能允许这样做,只需指定local.gem_name配置选项,如:
bundle config local.rack ~/path/to/local/rack

这只有在gem具有Gemfile中指定的git repo和branch的情况下才有效.

有关详细信息,请参阅thr Bundler文档:http://bundler.io/v1.3/bundle_config.html

猜你在找的Ruby相关文章