6

运行git push heroku master总是会触发一个提示:

使用 npm 安装依赖项

此步骤会再次加载并重新安装所有依赖项,即使它已经存在。这非常耗时,有时我想在部署时跳过此步骤,因为我知道依赖项是相同的。

是否有任何命令或选项可以做到这一点?

4

3 回答 3

2

你问这个问题已经很久了,现在 Heroku buildpack 缓存了node_modules,所以安装时间会快得多。

但是,如果您仍然想阻止npm install,这是一种解决方案。

在我写这篇文章时,默认的 Heroku 构建包不允许完全跳过 npm install。您可以在dependencies.sh文件中看到,这一行将始终运行:

npm install --unsafe-perm --userconfig $build_dir/.npmrc 2>&1

.npmrc但是,如果您在项目文件夹中创建一个名为的文件,其内容如下:

dry-run

这将导致 npm install 不修改您现有的node_modules目录。

请注意,此更改也将应用于npm pruneHeroku 运行的命令,但不会应用于npm rebuild命令(这可能没问题)。

于 2016-03-16T16:27:43.530 回答
0

尝试删除

节点模块

例如来自你的 .gitignore

于 2013-05-26T15:05:48.517 回答
0

我发现的最简单的方法是

heroku 应用程序:重命名新临时名称

然后

heroku 应用程序:重命名 originalName

或更改 NODE_ENV 并再次将其恢复为以前的状态。

heroku 配置:设置 NODE_ENV=dev

然后

heroku 配置:设置 NODE_ENV=生产

可能还有其他类似的黑客,但这些应该足够了。

于 2019-05-07T10:28:20.223 回答