刚开始使用Ruby。
我正在尝试使用rvm。现在,对于Project A,我试图指定一个指定的Ruby版本和一个gemset。
$ cat projecta/.rvmrc
rvm 1.8.7@projecta
我的理解是@之前的部分指定了Ruby版本,@之后的部分指定了gemset名称。 gemset IMU将提供项目特定的隔离位置,您可以在其中安装gem。
在我签入这个项目之后,我该怎样做才能自动化创建gemset的过程,并为以后检查项目的其他人安装正确的Ruby版本?
请建议适当的替代方案,因为我今天刚刚开始使用Ruby。
答案 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
当然还有其他方法可以做到这一点,但这种方式可以使一切明确,如果您需要,可以注释掉各行。