2011-05-26 93 views
1

我正在使用rails设计宝石。我注意到一个大小写敏感的bug在最新版本的设计中被修复,所以我正在考虑升级。Rails - 理解宝石

在我的宝石文件我有:

gem 'devise', '~> 1.1.3' 

当我运行捆绑我得到:

Using devise (1.1.9) 

为什么会有差别。我应该在我的gem文件中使用什么设置升级到最新最好的?

感谢

回答

2

在宝石声明中的~>说,捆扎机可安装任何版本升级到下一个主要版本,所以在这种情况下,它可以安装任何版本的设备,即=> 1.1.3和< 1.2.0。

包括~>是很好的做法,因为这意味着如果gem正确使用版本控制,则安全更新是自动的;在生产环境中,尽管您可能想要放弃这个名字,但只需静态设置您的gem版本以避免问题。

要更新到宝石,每次的最新版本,只需使用下面的没有第二个版本的说法:

gem 'devise' 

http://gembundler.com/gemfile.html参见有关的Gemfile格式的详细信息。

0

如果你知道你想要的版本号,试试这个(假设它是1.2.3):

gem 'devise', '1.2.3' 

或刚刚离开了版本号

若没有已经发布了,你可以指向它的github库。

0

只需使用:

gem 'devise' 

,您将得到最新的稳定宝石:)

+0

我得到这个错误捆扎机无法找到宝石 “设计” 兼容的版本: 在Gemfile中: devise_invitable(〜> 0.3.4)取决于 色器件(〜> 1.1.0) 色器件(1.3.4 ) – AnApprentice 2011-05-26 17:30:40

0

所不同的是,因为你告诉给捆扎机使用1.1.3或者本次重大版本你系统中的宝石,如果你想使用一个特定的版本,只需在版本参数中加入'1.1.9'即可。

0

使用bundle update devise更新devse宝石和bundle update更新所有的宝石(这是不可取的)

http://jsbin.com/ihiqe4