每个项目gemsets的RVM

时间:2011-12-19 05:24:22

标签: ruby-on-rails rvm

我很难理解每个项目gemsets的RVM。我按照http://beginrescueend.com/interpreters/ruby/安装了RVM和1.9.2和1.8.7红宝石,当我想开始一个新项目时,我一直

cd ~/Code
rvm use 1.9.2
rvm gemset create test1
rvm gemset use test1
gem install rails

但这需要很长时间! (安装导轨)。然后我rails new test1; cd test1

我真的不确定正确的工作流程。如果我正在制作一个新的应用程序进行测试,我不想等待rails安装。

http://beginrescueend.com/gemsets/basics/开始,我可以创建一个rails gemset,但是如何创建每个项目的gemset?

修改

如果我打算使用多个ruby / rails版本,我应该创建一个gemset,比如1.9.2@rails313,然后rails new blah,将1.9.2@rails313放在blah/.rvmrc中,如果我以后需要创建一个blah宝石集?

2 个答案:

答案 0 :(得分:10)

宝石集只是一个可以用来保持宝石彼此分离的容器。

重要思想:为每个项目创建一个gemset,允许您在不破坏所有其他项目的情况下更改一个项目的gem(和gem版本)。每个项目只需要担心自己的宝石。这是一个好主意,安装像Rails这样的大型宝石的等待时间通常是值得的。

那就是,如果您要在所有项目中使用相同版本的Rails并希望节省时间,您可以在{{中安装rails(也可能是rake) 3}} - 这些宝石在所有gemite 中都可用于该版本的ruby

假设您已经拥有test1宝石集:

$ rvm gemset use global
$ gem install rails
$ gem install rake
$ rvm gemset use test1
$ rails test1

答案 1 :(得分:1)

我在how to use RVM with gem sets上写了一篇简单的博客文章后,这可能会对您有所帮助。

更新:由于上面的链接已经死亡,我相信它位于其他位置here