嘿伙伴stackerenos!
很抱歉这样一个基本问题但是gemfile.lock和/或gemfile中这些行之间的区别是什么?
/Gemfile.lock or /Gemfile
mygem (1.1.0)
yourgem (= 1.3.4)
hisgem (<= 4.2.1)
hergem (>= 0.5.1)
somegem (~> 4.1.5)
我可以想到
hisgem (<= 4.2.1)
表示小于4.2.1的此gem的任何版本都应该有效。同样,hergem(&gt; = 0.5.1)表示任何大于0.5.1的宝石版本都应该有效。但
之间的区别是什么 yourgem (= 1.3.4)
和
somegem (~> 4.1.5)
他们都指定了宝石的确切版本吗?他们有什么不同?
答案 0 :(得分:2)
请参阅http://docs.rubygems.org/read/chapter/16#page74
从那个页面......
宝石'图书馆','〜&gt; 2.2'
请注意,我们只包含该版本的2位数字。运营商会 删除版本的最后一位数,然后增加剩余的最终数字 用于获取上限版本号的数字。因此'〜&gt; 2.2'是 相当于:['&gt; = 2.2','&lt; 3.0’ ]。我们说'〜&gt; 2.2.0',它会的 相当于:['&gt; = 2.2.0','&lt; 2.3.0’ ]。最后一位数 指定版本控制的粒度级别。 (记得你 如果悲观的算子,总是可以提供明确的上限 对你来说太有限了。)