gpt4 book ai didi

ruby - 如何配置 Bundler/Gemfile 以在开发期间使用不同的 gem 源?

转载 作者:数据小太阳 更新时间:2023-10-29 06:38:06 25 4
gpt4 key购买 nike

我有一个 Sinatra 应用程序需要我在本地开发的另一个 gem。我在配置 Bundler 以在开发期间使用我的本地 gem 代码时遇到问题,但在生产中使用我出售的 gem 代码。

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

# 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

与此同时,我每次部署时都采用手动销售 gem 并更新 Gemfile 中的 gem 源,这非常麻烦。我的工作流程是这样的:

  1. 在开发期间指向我的本地 gem (gem 'awesome', :path => "~/code/awesome")
  2. 准备部署时,将 gem 解压到 vendor/gems
  3. 更新 Gemfile 以指向 vendored gem(gem 'awesome', :path => "vendor/gems/awesome-0.0.1")
  4. 运行 bundle install(更新 Gemfile.lock)
  5. 部署代码
  6. 回到第 1 步。

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

这个场景的最佳工作流程是什么?

最佳答案

有一个新功能可以做到这一点,只需指定 local.gem_name 配置选项,例如:

bundle config local.rack ~/path/to/local/rack

这仅在 gem 具有 Gemfile 中指定的 git 存储库和分支时有效。

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

关于ruby - 如何配置 Bundler/Gemfile 以在开发期间使用不同的 gem 源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7337773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com