了解并使用项目特定的.rvmrc rvm配置文件

时间:2012-08-20 22:14:30

标签: ruby rvm

刚开始使用Ruby。

我正在尝试使用rvm。现在,对于Project A,我试图指定一个指定的Ruby版本和一个gemset。

$ cat projecta/.rvmrc
rvm 1.8.7@projecta

我的理解是@之前的部分指定了Ruby版本,@之后的部分指定了gemset名称。 gemset IMU将提供项目特定的隔离位置,您可以在其中安装gem。

在我签入这个项目之后,我该怎样做才能自动化创建gemset的过程,并为以后检查项目的其他人安装正确的Ruby版本?

请建议适当的替代方案,因为我今天刚刚开始使用Ruby。

2 个答案:

答案 0 :(得分:3)

旧路

要确保gemset / ruby​​可用,请使用此.rvmrc

rvm use 1.8.7@projecta --install --create

如果丢失则会安装ruby,如果丢失则会创建gemset。

特别注意,请不要使用1.8.7,它是不推荐的ruby,几乎没有支持(安全补丁到2013年的一半),你应该坚持使用最新的红宝石:

rvm use ruby

目前是:1.9.3-p194

答案 1 :(得分:2)

添加按需语法

您的语法无法正常编写。如果你想迫使人们按需编译rubies并创建gemsets,而不是在事情不存在时被警告,你需要一个项目 .rvmrc 这样的文件:

# Compile rubies on demand.
rvm_install_on_use_flag=1

# Create gemsets on demand.
rvm_gemset_create_on_use_flag=1

# Use ruby-1.8.7 while in project tree.
rvm use 1.8.7

# Use gemset "projecta" while in project tree.
rvm gemset use projecta

当然还有其他方法可以做到这一点,但这种方式可以使一切明确,如果您需要,可以注释掉各行。

另请参阅

https://rvm.io/workflow/rvmrc/