微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby – Bundler通过RVM提供什么?

我不确定这两个工具之间的区别.似乎有很大的重叠,但我一直在使用RVM并面临一些错误兼容性问题.

Bundler做什么,RVM没有?

解决方法

它们用于不同的目的. RVM创建一个沙箱来管理您的 Ruby安装.作为其中的一部分,它还允许您定义gemsets.

Bundler不管理你的Rubies,它适用于当前选择的Ruby.

因此,我认为您应该将RVM视为开发环境的配置管理器,并将Bundler视为应用程序的gem管理器.

编辑:其他想法 –

无论我们是否使用RVM,通常我们必须使用gem install blah加载我们将要用于app的所有gem,用于我们想要使用的每个gem.

我最终手动管理多个ruby的宝石.一旦安装完毕,我就可以使用RVM创建gemsets,但如果没有安装,RVM将不会自动检索某个特定版本的gem,或者如果它被删除则再次获取它.因为RVM更关心你的Ruby环境,所以它主要是将gem的版本化留给gem和我们.

另一方面,Bundler确实关心RVM中缺少的部分.为bundler创建Gemfile时,如果指定,它将检索必要的gem和特定版本.因此,在不同的机器上安装Ruby应用程序的任务变得更加简单.将文件推送到另一台机器,然后运行bundle install,它将完成剩下的工作.

它与Rails很好地配合使用,对我的生产文件来说是一个明智的解决方案.它将比我必须处理Perl发行版要简单得多,以便在相同的主机上运行Perl应用程序.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐