如何在安装之前更新我的npm包中的非 npm-package git-submodules?
我正在使用 git 并且有一个 node.js 模块,该模块依赖于一个外部项目,该项目也托管在一个 git 存储库中。我将外部项目添加为子模块,现在我正在尝试制作一个 npm 包。
由于外部依赖不是 npm 包(也不是节点模块),我想我不能使用npm submodule
命令,所以我想出了这个文件中的预安装脚本package.json
:
"scripts": { "preinstall" : "git submodule update --init"}
当我npm install
在包目录中执行时,它工作正常,但是当我尝试直接从我的远程 git 存储库或使用 tarball 安装包时npm pack
,我收到以下错误:
您需要从工作树的顶层运行此命令。
我也尝试过(如错误消息所述):
"scripts": { "preinstall" : "cd $(git rev-parse --show-toplevel) && git submodule update --init"}
这个没有显示任何错误,但也没有更新包目录中的子模块。
任何帮助,将不胜感激。