为什么在prestart部分需要同时使用npm install和npm install base1?
如果npm install本身从Git检索base1,那么为什么我们需要在prestart中提到npm install base1
对于一个Node.js程序,我看到了如下所示的package.json:
{
"name": "user01",
"version": "1.5.1",
"description": "",
"author": "",
"private": "true",
"main": "app.js",
"scripts": {
"start": "node app.js",
"prestart": "npm install && npm install base1 && npm install base2"
},
"dependencies": {
"ain2": "*",
"body-parser": "^1.15.0",
"express": "^4.13.3",
"uuid": "*",
"request": "^2.69.0",
"traverse": "*",
"base1": "git+ssh://xxxxxxxxxxx/base1.git",
"base2": "git+ssh://xxxxxxxxxx/base2.git"
}
}发布于 2016-12-14 08:31:40
第一次运行是获取包,第二次基本上是初始化它们。
npm安装
npm install(在包目录中,无参数):
在本地node_modules文件夹中安装依赖项。
npm安装包
npm install <folder>:
安装位于文件系统文件夹中的包。
来源:NPMJS
发布于 2016-12-14 17:13:24
额外的命令在npm@3或npm@2的最新版本中可能没有任何作用,在npm@2中,每次都会获取git remote。它们可能是一些previous git issues的变通方法,其中代码不会更新到npm install上的最新提交(回到v0.12版本)。指定包可能会强制从git获取最新版本的代码,这是在已经安装包的情况下普通npm install所不能做到的。
要确认当前发生的情况,请查看git base1包的区别。
rm -rf node_modules/base1
npm install -d
rm -rf node_modules/base1
npm install -d base1
rm -rf node_modules/base1
npm install -d
npm install -d base1更新git中的代码后,在debug中运行这两个安装程序,而不删除模块。
npm install -d
npm install -d base1如果这是他们的目的,那么可能不再需要额外的安装。
https://stackoverflow.com/questions/41132749
复制相似问题