如何在 .ruby-version 中使用任何补丁级别的 Ruby - rbenv/rvm

p11*_*00i 3 ruby ruby-on-rails rvm rbenv

无论rbenvRVM支持使用一个.ruby-version文件来指定一个项目文件夹内的一个Ruby的版本。我只想定义没有补丁级别的版本。

我尝试以下使用Ruby 1.9.3的任何PATCHLEVEL定义,但既不工作:1.9.31.9.3-p*

我知道rbenv-aliasesrvm alias但是没有它们是否有可能做到这一点?

给 Rails 用户的提示:

您可以添加到您的 Gemfile:

ruby '1.9.3'  
Run Code Online (Sandbox Code Playgroud)

如果您尝试使用不同版本运行您的应用程序,这将引发警告。

mpa*_*pis 5

虚拟机

跑:

rvm list known
Run Code Online (Sandbox Code Playgroud)

它将显示最常用的版本,如:

[ruby-]2.0.0[-p247]
Run Code Online (Sandbox Code Playgroud)

这意味着任何这些字符串都将匹配ruby-2.0.0-p247

  • 红宝石-2.0.0
  • 2.0.0
  • 2.0.0-p247

如果您需要匹配任何其他版本,2.0.0例如2.0.0-p195使用完整版2.0.0-p195或使用--fuzzy标志:

rvm use --fuzzy .
Run Code Online (Sandbox Code Playgroud)

.是当前目录-它将从当前目录下的加载红宝石。

还可以通过以下方式记住该--fuzzy标志:

echo rvm_fuzzy_flag=1 >> ~/.rvmrc
Run Code Online (Sandbox Code Playgroud)

环境

据我所知,rbenv 具有严格的版本匹配,您需要指定安装 ruby​​ 的完整目录名。

红宝石

默认情况下是否进行模糊匹配,并匹配已安装的 ruby​​ 字符串的任何部分。