我正在运行grunt.js。它的一个依赖项是node-jshint,它将实际的jshint文件作为子模块添加。 (我正在使用自己的node-jshint分支,以便我可以对jshint源进行一些修改。)
如果您在grunt中安装npm,它将安装node-jshint,它还将构建jshint子模块。
但是,我的package.json文件指向我的node-jshint fork的url而不是npm版本,并且永远不会创建jshint子模块。
似乎当npm正常抓取依赖关系时,它在内部运行git子模块更新,但是当它通过URL抓取依赖关系时,它永远不会运行该命令。
无论如何强制npm在安装依赖项时运行git submodule update,比如通过package.json?