RVM Best Practices表示,要将项目连接到特定的Ruby版本,您应该在项目特定的rvmrc
文件中指定该版本。
This SO answer指出,在大多数情况下,您应该使用.ruby-version
文件中的Ruby版本。
Heroku says您应该在Gemfile
中指定Ruby版本。
如果应用程序将部署在Heroku上,使用RVM指定Ruby版本的正确方法是什么?
答案 0 :(得分:4)
.rvmrc
,而应使用.ruby-version
。
但是Heroku没有注意.ruby-version
。 Heroku希望在Gemfile
中拥有它。所以我认为你应该同时使用:.ruby-version
(适合你)和Gemfile
(适用于Heroku)。
答案 1 :(得分:2)
为了Heroku的缘故,你需要将它放在Gemfile中,但是如果你使用的是版本管理器,那么你需要为版本管理器使用其他东西。我认为在这方面SO答案是有道理的(即.ruby-version
文件)。
答案 2 :(得分:1)
检查https://rvm.io/workflow/projects - 它表示您可以使用Gemfile
为RVM指定ruby版本,如下所示:
ruby "1.9.3"
或更复杂的事情:
ruby File.readlines(".ruby-version").first.strip
然后在.ruby-version
:
1.9.3
这样它也可以与其他ruby环境管理器一起使用,例如chruby