在Rails Gemfile中,它们之间有什么区别:
gem "gemname", "~> 4.0.1"
和
gem "gemname", "4.0.1"
和
gem "gemname"
还应该使用哪种方式,以及遵循这种方式的好处?
答案 0 :(得分:42)
第一个将告诉bundler加载任何与最后一个(补丁)号不同的gem。所以4.0.x其中x是1或更大。
第二个只加载4.0.1。
第三个将获得最高值(取决于Gemfile中其他gem的需求)或者获取Gemfile.lock中指定的任何内容(如果有的话)。
我错过了你的第二个问题。坦率地说,这取决于。在大多数情况下,我选择第一个选项,因为它可以让我修复错误修复,而不用担心它会如何影响我的其他宝石。