在 Gemfile 中,可以引用github上托管的gem:
gem 'spree', github: 'spree/spree', branch: '2-3-stable'
gem 'spree_gateway', github: 'spree/spree_gateway', ref: '2-1-stable'
Gemfile manpage描述了git的三个属性: branch , ref 和 tag 。 ref
和branch
之间有什么区别? Bundler如何根据属性以不同方式处理gem?
这尤其有趣,因为您一次只能使用其中一个属性。
答案 0 :(得分:5)
使用branch
,您只需指定要从中获取的git分支。如果您在定位分支时执行了bundle up <gem>
,则会更新到该分支的提示。
ref
确实将其归结为个人提交。你不会给人类可读的&#34;就像你在问题中所做的那样,你可以这样做:
gem 'something', github: 'someone/something', ref: '832e76a9'
现在你已将它固定在那个参考号上了。如果你做了bundle up something
,它就不会改变那个gem(它可能会更新它的依赖关系)。