捆绑器如何工作(一般情况下)?

我是Ruby / Rails的新手,但我正在看看bundler并且想知道它是如何工作的。 你是否安装了一整套gem,比如普通gem install XYZ ,然后使用Gemfile来拉取这些gem的某个子集以用于特定的应用程序? 或者你不再正常安装gem,只是将它们包含在Gemfile中,然后进行bundle install ,将它们全部包含在一个捆绑包中,然后与你的应用程序一起使用?

非常感谢您花时间回答这个问题,我对Bundler的function确切感到困惑。

– MAP

将bundler视为包管理工具。

bundle help命令:

bundle install #将当前环境安装到系统中

bundle package #锁定然后将所有gem缓存到vendor / cache中

所以bundle install命令会将所有gems安装到Gemfile中列出的系统及其依赖项。 如果以前没有安装过gem,它将从gem切割器仓库中抓取它。 bundle package会将.gem文件缓存到您的应用程序供应商/缓存目录中。

无需先运行gem install

这两个链接解释了有关bundler的一切。

  • 捆绑包如何捆绑

  • bundle如何需要gem