私人回购的NPM更新失败

时间:2012-12-17 19:28:22

标签: node.js npm

我有一个快速项目,可以访问我在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中获取它吗?

由于

金妮

2 个答案:

答案 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