Bundler:在vendor文件夹中有两个缓存,为什么要运行bundle package呢?

时间:2012-01-19 16:38:55

标签: ruby bundler

我跑了:

bundle install --path vendor作为第一个Bundler安装。然后我跑了:

bundle package,它会创建供应商/缓存目录并放入宝石。但是,还有一个 vendor / ruby​​ / 1.9.1 / cache / 目录。它具有相同的内容(我md5'ed他们)。

那么,bundle package的重点是什么?

非常感谢任何见解。

1 个答案:

答案 0 :(得分:2)

bundle package.gem源文件存储在vendor/cache中,这可确保顺利部署并允许轻松恢复旧项目。这在使用gem的fork时特别有用,因为作者可以随时关闭他们的repo,使你的app不完整。

vendor/ruby目录包含已安装的gem,在某些情况下它们是相同的。但是一些gems使用本机扩展构建,因此由于不同的体系结构,这些不能用于部署。您应该将vendor/ruby添加到.gitignore文件中。