使捆绑器适用于具有不同rails版本的许多RoR项目

时间:2012-11-21 18:32:14

标签: ruby-on-rails ruby bundler

所以,似乎每个与bundler一起工作的人只有一个项目一次运行到他们的机器中。 我现在有两个项目,我正在研究,两个都是RoR,前者使用rails 3.0.5并且打算在ruby 1.8.7上运行,而后者使用3.2.9并且打算在ruby 1.9上运行。 3,所以我想要在我的机器上工作。 我是这个Ruby on Rails的新手,所以正如我所见,每当你想要你的环境工作时,你必须配置你的Gemfile然后运行:

bundle install

那么,每次我想运行它时,我是否必须为每个项目运行(并通过逻辑安装和卸载gems)?

还有其他办法吗?

3 个答案:

答案 0 :(得分:0)

RVM就是针对这种情况而制作的。

使用它,在每个项目的根目录中放置一个.rvmrc文件,它将自动为您切换ruby版本。这是有史以来最好的事情。

答案 1 :(得分:0)

当您更改了bundler install规范,重新安装Ruby或安装了没有安装gem的较新版本,或者您希望运行时,您只需要运行Gemfile更新您的Gemfile.lock

创建bundler的原因是允许多个项目并行工作。在任何时候,我都有大约15-20个不同的应用程序都由bundler管理,它运行良好。

如果您想为每个项目切换到特定版本的Ruby,可以使用rbenvrvm进行管理。

答案 2 :(得分:0)

有两个答案:

  • rvm(ruby版本管理员)
  • rbenv

两者都允许您创建具有不同版本的宝石,ruby版本等等的环境。

只要您使用“rake”等命令和其他bundle exec rake foo:bar

的命令,两者都可以使用bundler