尝试从GitHub安装模块会导致以下错误:

package.json上的ENOENT错误。

容易复制使用express:

NPM安装https://github.com/visionmedia/express抛出错误。

NPM安装快速工程。

为什么我不能从GitHub安装?

下面是控制台输出:

npm http GET https://github.com/visionmedia/express.git
npm http 200 https://github.com/visionmedia/express.git
npm ERR! not a package /home/guym/tmp/npm-32312/1373176518024-0.6586997057311237/tmp.tgz
npm ERR! Error: ENOENT, open '/home/guym/tmp/npm-32312/1373176518024-0.6586997057311237/package/package.json'
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.8.0-23-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "https://github.com/visionmedia/express.git"
npm ERR! cwd /home/guym/dev_env/projects_GIT/proj/somename
npm ERR! node -v v0.10.10
npm ERR! npm -v 1.2.25
npm ERR! path /home/guym/tmp/npm-32312/1373176518024-0.6586997057311237/package/package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/guym/dev_env/projects_GIT/proj/somename/npm-debug.log
npm ERR! not ok code 0

当前回答

如果你得到这样的东西:

npm犯错!Enoent undefined ls-remote -h -t https://github.com/some_repo/repo.git

确保你更新到最新的npm,并且你也有权限。

其他回答

Peter Lyons给出的目前排名第一的答案与最近的NPM版本无关。例如,使用这个回答中批评的相同命令现在是可以的。

npm install https://github.com/visionmedia/express

如果您有持续的问题,这可能是您正在使用的任何包的问题。

你可以通过npm install命令直接安装一个GitHub存储库,就像这样:

npm install https://github.com/futurechallenger/npm_git_install.git --save

注意:在npm命令将要安装的存储库中:

根据Dan Dascalescu的评论,也许你必须在你的存储库中有一个dist文件夹。 你一定要打包。Json在你的存储库!我忘记加了。

如果你得到这样的东西:

npm犯错!Enoent undefined ls-remote -h -t https://github.com/some_repo/repo.git

确保你更新到最新的npm,并且你也有权限。

你可以:

npm install git://github.com/foo/bar.git

或者在package.json中:

"dependencies": {
  "bar": "git://github.com/foo/bar.git"
}

直接安装:

npm install visionmedia/express

或者,你可以在package的“dependencies”部分添加“express”:“github:visionmedia/express”。,然后运行:

npm install