Lai*_*uan 14 ruby github bundler gemfile
如果有两个宝石,A和B.A1.0.0取决于B1.0.0.
在我的Gemfile中:
gem 'A', '~> 1.0.0'
Run Code Online (Sandbox Code Playgroud)
然后跑bundle.它将生成一个Gemfile.lock,如:
A (1.0.0)
B (1.0.0)
Run Code Online (Sandbox Code Playgroud)
但如果我想强行A使用B1.0.1,最佳做法是什么?而且,如果B1.0.1不是发布而是github标签?
Pan*_*kos 17
您需要在Gemfile中明确指定B gem以使用git存储库或其他版本.只要A 1.0.0与B 1.0.1兼容,你就可以了.如果它只与B 1.0.0兼容,那么你将不得不创建自己的A gem分叉并升级gemspec以与B 1.0.1兼容,然后使用该存储库作为A的宝石而不是rubygems版.
这是一个示例Gemfile,可以为您提供所需的内容,前提是A 1.0.0与B 1.0.1兼容.
gem 'B', :git => 'git://github.com/B/B.git', :tag => '1.0.1'
gem 'A', '~> 1.0.0'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4695 次 |
| 最近记录: |