如何使用rvm安全地升级我的ruby on rails app以使用新的ruby版本?
答案 0 :(得分:4)
假设您的应用是my_app,并且您使用的是ruby版本a.b.c,并希望转到ruby版本x.y.z。
第0步
开始之前,请确保您拥有rvm的最新版本
rvm get stable
rvm reload
第1步
首先,如果您没有当前ruby版本的gemset,请创建一个并将其设为默认值。如果您的升级中断测试,这将为您提供一种简单的方法。如果您不想这样做,请转到步骤2.
rvm gemset create my_app_abc
切换到该gemset并将gem安装到该gemset中,并使其成为目录的默认gemset
rvm a.b.c@my_app_abc
bundle
rvm --ruby-version use a.b.c@my_app_abc
第2步
现在升级到新的ruby版本并为其创建一个gemset。
rvm install x.y.z
rvm use x.y.z
rvm gemset create my_app_xyz
rvm x.y.z@my_app_xyz
最佳做法是在Gemfile中指定ruby版本
确保你的Gemfile顶部有ruby 'x.y.z'
。然后
gem install bundle
bundle
这是乐趣可以开始的地方,此时您可能会收到错误,并使用错误说明或谷歌搜索等组合来解决它们。如果可以成功捆绑,则运行所有测试。
当您的测试全部通过后,您已成功升级。如果您遇到问题,可以使用rvm a.b.c@my_app_abc
返回旧版安装。
如果您对新安装感到满意,请执行
rvm --ruby-version use x.y.z@my_app_xyz
将此设为此应用的默认设置。这意味着当您从其他项目更改为此应用程序时,它将自动加载ruby版本x.y.z和相应的gemset。