我有一个快速项目,可以访问我在github中保存在私有存储库中的一些常见节点代码。我的package.json文件中有一行如下所示
git+ssh://git@github.com:MYGITHUBACCT/MYPROJECT.git#master
当我运行npm install时,一切正常,它从私有仓库中提取公共代码并将其放在我的node_modules目录中。但是,当我运行npm update时,它在我的私人仓库上失败并显示以下内容:
npm ERR! 404 'MYPROJECT' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, or http url, or git url.
npm ERR! System Darwin 12.2.0
npm ERR! command "node" "/usr/local/bin/npm" "update"
npm ERR! cwd /Users/ginnyd/dev/gg-web
npm ERR! node -v v0.8.16
npm ERR! npm -v 1.1.69
npm ERR! code E404
我需要在package.json中做些什么特别的事情,以便我可以运行更新并从GitHub中获取它吗?
由于
金妮
答案 0 :(得分:2)
Apparently, this is still an open issue with npm
同时,要更新git依赖项,您必须先删除它们,然后再执行npm install
。
rm -rf node_modules/MYPROJECT
npm install
答案 1 :(得分:0)
npm中有fixed,请升级到npm> = 1.3.10
样本用法
"dependencies": {
"thing": "git://github.com/myGitHubRepo/repo.js.git#56477cb",
}
某天后
"dependencies": {
"thing": "git://github.com/myGitHubRepo/repo.js.git#67f90b5",
}
再次npm install
,你会得到新的参考!
如果您的“myGitHubRepo / repo.js”是private个套餐,那么您应该设置"private": true
以确保它不会accidentally published to npm registry