2010-01-27 109 views

回答

1

这取决于。如果您正在讨论升级到包含Rails的最新gem,那么如果应用程序使用早已弃用并随后被删除的功能,那么它们将会中断。

要知道的唯一方法就是尝试一下。注意开发日志中的弃用警告。希望你有好的测试套件。

0

它就像任何其他依赖项。看看version number每个宝石:

1.2.3

在这种情况下,1是主版本。如果这个数字已经改变,那么绝对不要升级。这将需要使用新的工作。

2是次要版本。如果只有这个数字发生了变化,您应该应该安全升级,但要小心。做大量的烟雾测试。

3是一个错误修复版本。如果只有这个变化,你肯定可以升级。在这么长时间之后,不可能只有这个改变,但如果是这样的话,那么你就是安全的。

不幸的是,这些只是指导方针,许多开源项目并没有很好地遵循它们。所以,请采取一点盐的建议。

2

当然,唯一确定的方法就是测试。这么说,如果你想,以确保当你测试应用程序的工作,我相信你可以运行

rake rails:freeze:gems 

当前已安装的宝石复制到你的项目中供应商的文件夹。如果在测试后,你的项目可以使用新版本,运行

rake rails:unfreeze 

返回到宝石的系统安装的版本。

0

如果您使用rails 1.x运行并升级rails gem,那么您的应用程序将会中断。 Rails 2.x是非常不同的。

关于其他宝石,它们可能会破坏。阅读发布说明,通常作者警告有关向后兼容性。

如果你不想升级,你也可以冻结宝石。

相关问题