正如标题所示,找不到@something
rvm use 2.0.0@something
中{{1}}所做的任何文档?
答案 0 :(得分:7)
RVM是Ruby版本管理器,其网站位于:https://rvm.io/
命令rvm use 2.0.0@something
告诉RVM更改当前shell(终端)的设置,以便您使用ruby 2.0.0。它还说要使用名为something
的gemset。 Gemsets是RVM的一个功能,它允许您将Ruby gem分成不同的集合。
有关gemsets的更多信息,请访问:https://rvm.io/gemsets/basics
答案 1 :(得分:1)
假设您正在处理三个并行项目:一个使用Ruby 1.9.3,另一个使用Ruby 2.0.0。让我们说:
当您处理项目A时,您可以说rvm use 1.9.3
,它会将您当前的Ruby版本设置为1.9.3。
当您使用Project B或C时出现问题,并且他们使用同一gem的不同版本(假设Project B使用httparty 1.0
,而项目C使用httparty 2.0
)。
在这种情况下,rvm不仅允许您使用rvm use
使用不同的红宝石,还允许您对每个Ruby使用不同的宝石集(称为gemsets
)。
所以你可以说(当在项目B上时):rvm使用2.0.0@project_b_gemset(这将把项目B所需的所有宝石安装为另一组)
当你在项目C上时,你可以说rvm use 2.0.0@project_c_gemset
,这将把项目C所需的所有宝石作为一个不同的集合安装。因此,您可以使用具有相同Ruby版本的不同宝石集。
总结:
rvm use ruby_version@gemset_version:
ruby_version
允许基于Ruby版本进行隔离,gemset_version
允许您在相同版本的Ruby中进行进一步的隔离。