我想让邦德勒装本地宝石。有别的选择吗?或者我必须将gem文件夹移动到.bundle目录?
当前回答
如果你也想要分支:
gem 'foo', path: "point/to/your/path", branch: "branch-name"
其他回答
你可以用source引用宝石:
来源:'https://source.com', git仓库(:github => 'git/url') 使用本地路径
:path => '…/path/gem_name'。
您可以了解更多关于[Gemfiles和如何使用它们] (https://kolosek.com/rails-bundle-install-and-gemfile)。
我相信你能做到:
gem "foo", path: "/path/to/foo"
除了指定路径(如Jimmy提到的),您还可以通过使用以下配置选项强制Bundler仅为您的环境使用本地gem:
$ bundle config set local.GEM_NAME /path/to/local/git/repository
如果你正在开发两个gem或者一个gem和一个rails应用程序,这是非常有用的。
但是请注意,这只在你已经在使用git的依赖时才有效,例如:
# In Gemfile
gem 'rack', :github => 'rack/rack', :branch => 'master'
# In your terminal
$ bundle config set local.rack ~/Work/git/rack
从文档中可以看到。
你也可以用git引用一个本地gem,如果你碰巧正在使用它的话。
gem 'foo',
:git => '/Path/to/local/git/repo',
:branch => 'my-feature-branch'
然后,如果有变化,我就跑
bundle exec gem uninstall foo
bundle update foo
但我不确定每个人都需要执行这两个步骤。
如果你也想要分支:
gem 'foo', path: "point/to/your/path", branch: "branch-name"
推荐文章
- 理解:Rails的has_one/has_many的源选项
- 了解Gemfile。锁文件
- 如何确定一个数组是否包含另一个数组的所有元素
- Rails find_or_create_by多个属性?
- Rails ActiveRecord日期之间
- 是什么导致这个ActiveRecord::ReadOnlyRecord错误?
- 最好的打印散列的方法
- Rails:dependent =>:destroy VS:dependent =>:delete_all
- 我可以在不包含Ruby模块的情况下调用实例方法吗?
- 如何将新项目添加到哈希
- 测试一个Ruby类是否是另一个类的子类
- 什么时候使用Struct vs. OpenStruct?
- 对于PostgreSQL表来说,多大才算太大?
- 数组到哈希Ruby
- 我如何让红宝石打印一个完整的回溯而不是截断一个?