仅安装devDependencies的常用方法是使用npm install --only=dev
(如果只需要依赖项,则使用--only=production
。)
这在8.7中不再起作用。如果我运行此命令,npm将尝试安装所有依赖项。或者至少,它在/usr/bin/git ls-remote -h -t
以外的软件包上运行devDependencies
。那些包在私人git repos中,npm安装失败了。
直到我从7.4.0
升级到8.7.0才发生这种情况npm cli documentation仍然显示了旧的做法。
该选项是否有新语法?
答案 0 :(得分:4)
来自npm help install
的输出:
npm install (在包目录中,没有参数):
在本地node_modules文件夹中安装依赖项。
在全局模式下(即,在命令后附加
-g
或--global
),它将当前包上下文(即当前工作目录)安装为全局包。默认情况下,
npm install
将在npm help 5package.json
中安装列为依赖项的所有模块。使用
--production
标志(或NODE_ENV
环境变量设置为production
时),npm将不会安装devDependencies
中列出的模块。
因此,您似乎只能dependencies
安装--production
;不确定是否有办法只安装devDependencies
。