chruby和chgems能否取代rvm';什么是宝石?

chruby和chgems能否取代rvm';什么是宝石?,ruby,macos,rvm,chruby,Ruby,Macos,Rvm,Chruby,我目前正在开发机器上使用rvm在rubies(主要是1.9.x和1.8.7)之间切换。然后我偶然发现“不钩住cd”功能很吸引人 chruby+chgems能否替换rmv的gemset功能 之前: $ rvm 1.8.7 将切换到ruby 1.8.7,并为我以前的rails项目提供1.8.7版gems。以及: $ rvm 1.9.3 将切换到ruby 1.9.3,并为我的新rails项目提供1.9.3 gems集 通过chruby和chgems如何实现这一点?既然我使用了chruby和chge

我目前正在开发机器上使用
rvm
在rubies(主要是1.9.x和1.8.7)之间切换。然后我偶然发现“不钩住
cd
”功能很吸引人

chruby
+
chgems
能否替换
rmv
的gemset功能

之前:

$ rvm 1.8.7
将切换到ruby 1.8.7,并为我以前的rails项目提供1.8.7版gems。以及:

$ rvm 1.9.3
将切换到ruby 1.9.3,并为我的新rails项目提供1.9.3 gems集


通过
chruby
chgems
如何实现这一点?

既然我使用了chruby和chgems,我将尝试一下这个问题。我在Mac OS X上,我通过自制软件安装了chruby

在我的
.bashrc
文件中:

source /usr/local/share/chruby/chruby.sh
chruby ruby-2.0.0-p195
源代码行是Chruby的一部分

第二行为我的系统(在我的例子中是Ruby 2.0.0)设置了一个Ruby框架注意:从Chruby 0.3.6开始,它属于
.bashrc
而不是
.bash\u profile

在我的
.bash\u配置文件中

source /usr/local/share/chruby/auto.sh
这行设置了Chruby中的功能

我仍然有一些项目使用Ruby 1.9.3,因此对于这些应用,我在应用的根目录中有一个
.Ruby版本
文件。只有一行
ruby-1.9.3


当您将cd刻录到应用程序的目录中时,键入
chgems
,然后您就可以捆绑安装什么的。您可以通过输入
gem env

为了让我的生活更轻松,我添加了.bash_别名,例如:
别名myapp='cd~/Sites/myapp&&chgems'



我已经一起使用了几个月了,我真的很喜欢这种组合,是的,我可以告诉你,Chgems在复制RVM的gemset特性方面做得很好。我强烈建议您阅读和项目的文档,因为这些都包括在内。在您的情况下,您可能不想设置默认的Ruby,只需使用.Ruby版本为每个应用程序设置它。

在6月24日更新了我的答案,以反映Chruby 0.3.6发布后所产生的变化。您也可以使用Chruby比chgems更有效。chgems Worth nothing:chgems已被弃用,取而代之。