如何在我的package.json中添加非npm依赖项?

B T*_*B T 5 git github node.js npm

我正在尝试将一个特定版本的node-browser-builtins添加到我的package.json文件中,但它似乎不喜欢"commit-ish"修订版哈希.查看npm的文档,似乎大多数选项URLs as Dependencies都需要用户名.我不想提供我的用户名..因为这真的没有意义.这不应该与我的用户链接工作.

我尝试将此tarball添加为依赖项 - 当我在命令行上使用它时(即npm install):

https://github.com/alexgorbatchev/node-browser-builtins/tarball/e5f81125f3c37532d7def0736265dbe87861e5e4

但它给了我这个错误:Error: 404 Not Found.看起来它@在URL的末尾添加了一个,这显然会使它失败.

我还在文档中尝试了选项1 :

git://github.com/alexgorbatchev/node-browser-builtins.git#e5f81125f3c37532d7def0736265dbe87861e5e4

但它给了我错误:

npm ERR! Error: Command failed: fatal: ambiguous argument 'e5f81125f3c37532d7def0736265dbe87861e5e4@': unknown revision or path not in the working tree.

看起来它@在这种情况下也错误地添加了一个.

已经得到它做这个工作:

git+https://myUserName@github.com/alexgorbatchev/node-browser-builtins.git#e5f81125f3c37532d7def0736265dbe87861e5e4

但同样,我不希望我的用户名与依赖关联.那么你应该怎么做呢?

更多信息:我在Windows 7上,npm -v 1.2.24,我的package.json具有列在array([])中的依赖项,而不是对象.

B T*_*B T 3

---更新答案---

对于 git,我现在使用存档路径来执行此操作:

https://github.com/fresheneesz/trimArguments/archive/e69ed3ebdfe6cf055916ba6e3a1e4b28f696da6f.tar.gz
Run Code Online (Sandbox Code Playgroud)

- -老的 - -

我找到了一种方法来做到这一点,但我仍然想回答我关于为什么我之前的尝试失败的问题。

我让它工作的方法是将我的用户名替换为git. 所以:

git+https://git@github.com/alexgorbatchev/node-browser-builtins.git#e5f81125f3c37532d7def0736265dbe87861e5e4

如果我需要从 tarball 添加依赖项,我仍然不知道该怎么做。所以这不是一个完整的答案。