运行git push heroku master总是触发一个提示:
Installing dependencies with npm
此步骤即使已经存在,也会再次加载并重新安装所有依赖项.这非常耗时,我希望在部署时有时会跳过此步骤,我知道依赖项是相同的.
是否有任何命令或选项可以做到这一点?
解决方法
自从你提出这个问题已经很久了,现在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目录.
请注意,此更改也将适用于Heroku运行的npm prune命令,但不会应用于npm rebuild命令(这可能很好).