首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >总是在"bundle exec“之前进行"bundle install”吗?

总是在"bundle exec“之前进行"bundle install”吗?
EN

Stack Overflow用户
提问于 2019-05-16 23:49:35
回答 2查看 877关注 0票数 2

对于gem的任何构建,确保依赖项安装在构建节点上的最佳实践是什么?

如果某些依赖项尚未安装,则bundle exec将失败。

我应该这样做吗?

代码语言:javascript
复制
bundle install
bundle exec rake

在每一个版本上?

还是有更好的方法?

EN

回答 2

Stack Overflow用户

发布于 2019-05-17 00:16:27

rails附带的bin/setup脚本使用bundle check || bundle install作为光标前的步骤。这可能是一个很好的起点。

我在我们的管道上使用bundle install --frozen;frozen确保不会发生对Gemfile.lock的更改。我们使用缓存,所以我甚至不会为bundle check步骤而烦恼。

如果您可以提供有关设置的更多详细信息(docker?库伯内斯?托管提供商?)如果是捆绑包的安装时间产生了问题,那么有人可能会为bundler推荐一种缓存策略。

通常,对于CI管道,我们总是在构建的早期运行bundle install --frozen,即使我们设置了缓存机制。我注意到,在某些情况下,当恢复表单缓存时,可执行文件不会自动链接,因此这可以确保一切正常。它无论如何都不慢;使用缓存,bundle install --frozen步骤只需要一到两秒钟。

票数 1
EN

Stack Overflow用户

发布于 2019-05-17 00:24:20

Bundler通过跟踪和安装所需的gem和版本,为Ruby项目提供了一个一致的环境。Bundler确保您需要的gem出现在开发、试运行和生产中。

要使用所有必需的gem启动项目,请运行:bundle install

bundle exec是一个Bundler命令,用于在当前包(来自目录的Gemfile)的上下文中执行脚本。例如,要从当前gem集运行迁移命令,请运行:

bundle exec rake db:migrate是脚本,其中db是名称空间,migrate是定义的任务名称。

希望它能给我们一些启示。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56172349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档