4

我想知道区别?我使用的是RVM,使用bundle install和rvm bundle install有什么区别?

我可以运行两个,他们安装,但实际的区别是什么?

我正在做一个michael hart的教程/截屏视频,他使用bundle install,这与使用rvm bundle install有什么不同?

我还决定尝试一下“rubymine”IDE的试用版,我在终端中运行软件包安装后发现它,然后打开ide告诉我需要更新一些宝石,所以我确信它不会安装捆绑在同一个地方。

我已经加载了一个rvm项目。

+0

我觉得你很困惑。没有'rvm bundle'命令。 'bundle'是安装捆绑软件gem后使用的命令。 – ghoppe

回答

10

我觉得从这个问题来看,你并没有完全理解rvmbundler之间的区别,以及它们究竟做了什么。我会尝试解释这种差异。

RVM是Ruby环境(版本)管理器的首字母缩写。这是一组命令行脚本,用于帮助为某个项目或某组项目“sandbox”ruby二进制文件和gems。这样,如果您有一个项目需要Ruby 1.8,而另一个需要使用Ruby 1.9,则可以在两个Ruby安装之间轻松切换,避免不兼容或繁琐的配置。

你也可以为每个ruby版本安装不同的gemset,所以如果你需要用Ruby on Rails 2.3和一些3.0开发一些应用程序,或者如果你想尝试新的3.1版本,你可以在不破坏的情况下其他应用程序的依赖关系。

Bundler是一个红宝石宝石,正如网站所说,它在整个生命周期内系统地和可重复地管理多台机器上的应用程序依赖项。

捆扎机可以很容易地一个应用程序的源从一台机器复制到另一台,并安装所有的宝石,并通过特定的应用需要迅速依赖性和(相对)怕疼。

所以我明白混乱,因为有一些重叠。 RVM gemsets与gem bundle类似。不同的是,打捆管理宝石和依赖关系单个应用程序和整个多台机器。 rvm gemset是一个沙盒,它将一组宝石保存在一个地方,并绑定到单个机器上的特定ruby安装,有时用于多个应用程序。

因此,当你说你在你的IDE中“加载了一个rvm项目”时,这并不是特别真实。 RVM是一个沙箱,而不是一个框架。

+0

现在对我完全有意义。我正在运行bundle install和rvm bundle install,这就是我变得困惑的地方。 – LondonGuy

+0

嗯,我仍然困惑,你在说什么,因为如果你键入的命令行'RVM束install',它会显示一个错误,因为没有'RVM bundle'命令。 ;-) – ghoppe

+0

我的意思是当我输入rvm gem install GEMNAME ..它的工作原理。当我输入“宝石列表”时,rvm gem list给了我一个不同的宝石列表 – LondonGuy

相关问题