Gen*_*nik 7 ruby bundler rvm ruby-on-rails-3
我不确定这两个工具之间的区别.似乎有很大的重叠,但我一直在使用RVM并面临一些错误兼容性问题.
Bundler做什么RVM没有?
the*_*Man 11
它们用于不同的目的.RVM创建一个沙箱来管理您的Ruby安装.作为其中的一部分,它还允许您定义gemsets.
Bundler不管理你的Rubies,它适用于当前选择的Ruby.
因此,我认为您应该将RVM视为开发环境的配置管理器,并将Bundler视为应用程序的gem管理器.
编辑:其他想法 -
无论我们是否使用RVM,通常我们都必须为gem install blah我们想要使用的每个宝石手动加载我们将要用于app的所有宝石.
我最终手工处理了多个红宝石的宝石.一旦安装完毕,我就可以使用RVM创建gemsets,但是如果没有安装,RVM将不会自动检索特定版本的gem,或者如果它被删除则再次获取它.因为RVM更关心你的Ruby环境,所以它主要是将gems的版本保留gem给我们.
另一方面,Bundler确实关心RVM中缺少的部分.为bundler创建Gemfile时,如果指定,它将检索必要的gem和特定版本.因此,在不同的机器上安装Ruby应用程序的任务变得更加简单.将文件推送到另一台机器,然后运行bundle install,它将完成剩下的工作.
它与Rails很好地配合使用,对我的生产文件来说是一个明智的解决方案.它比我必须处理Perl发行版要简单得多,以便在相同的主机上运行Perl应用程序.