我有一个模块。它是在私人repo.i上有它的git url以及https url.but如何添加它作为dependency.my package.json是
{
"name": "application-name",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node app.js"
},
"dependencies": {
"express": "3.4.0",
"jade": "*",
"passport-strategy" : "ssh://git@bitbucket.org/RiteshM/passport-strategy.git"
}
}
它在npm install上给我错误
npm http GET https://registry.npmjs.org/passport-strategy
npm http 304 https://registry.npmjs.org/passport-strategy
npm ERR! Error: No compatible version found: passport-strategy@'ssh://git@bitbucket.org/RiteshM/passport-strategy.git'
npm ERR! Valid install targets:
npm ERR! ["1.0.0"]
npm ERR! at installTargetsError (/usr/local/lib/node_modules/npm/lib/cache.js:719:10)
npm ERR! at /usr/local/lib/node_modules/npm/lib/cache.js:638:10
npm ERR! at saved (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/get.js:142:7)
npm ERR! at /usr/local/lib/node_modules/npm/node_modules/graceful-fs/polyfills.js:133:7
npm ERR! at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Linux 3.5.0-40-generic
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! cwd /home/ritesh/projects/passport-topcoder/examples/signin
npm ERR! node -v v0.10.17
npm ERR! npm -v 1.3.8
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /home/ritesh/projects/passport-topcoder/examples/signin/npm-debug.log
npm ERR! not ok code 0
是不是有任何方法可以安装模块而无需在npm注册表上注册?请指导。
答案 0 :(得分:3)
您的Git网址格式不正确。在npm documentation中,声明Git网址必须是以下格式之一:
git://github.com/user/project.git#commit-ish
git+ssh://user@hostname:project.git#commit-ish
git+ssh://user@hostname/project.git#commit-ish
git+http://user@hostname/project/blah.git#commit-ish
git+https://user@hostname/project/blah.git#commit-ish
所以你的package.json
应该更像这样:
{
"name": "application-name",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node app.js"
},
"dependencies": {
"express": "3.4.0",
"jade": "*",
"passport-strategy": "git+ssh://git@bitbucket.org/RiteshM/passport-strategy.git"
}
}