看了一下npm install文档,似乎可以从Github仓库中进行npm安装。
那么是否也可以从一个pull request中进行安装呢?
解决方案是根据该pull request的最后提交(last sha)进行安装吗?
看了一下npm install文档,似乎可以从Github仓库中进行npm安装。
那么是否也可以从一个pull request中进行安装呢?
解决方案是根据该pull request的最后提交(last sha)进行安装吗?
GitHub在原始存储库中为每个PR维护一个命名空间,因此这也可以起作用:
npm install <user>/<repo>#pull/<id>/head
注意:在NPM v.5中似乎无法正常工作。请参见下面的评论。 适用于npm 7.0.23和可能的早期版本。请参见下面的评论。
例如:
npm i --save-dev json-schema-faker/json-schema-faker#pull/129/head
或使用yarn:
yarn add <user>/<repo>#<id>/head
例如:yarn add json-schema-faker/json-schema-faker#129/head
请注意,在Yarn的情况下,包标识符中没有pull/
段。如果您需要自动安装或存储库/分支被删除,这可能会很有帮助。另请参阅GitHub上的在本地修改非活动拉取请求。npm install git+https://github.com/user/repo.git#branch
值得一提的是,在 shell 中使用特定分支时,您可能需要转义 #
符号,例如:npm install git+https://github.com/user/repo.git\#branch
请注意,您想要安装的代码库必须是一个npm模块,它必须包含一个package.json
文件,否则您将会遇到这个错误:Error: ENOENT, open 'tmp.tgz-unpack/package.json'.
npm ERR! code ENOENT
npm ERR! syscall spawn git
npm ERR! path git
npm ERR! errno -2
npm ERR! enoent An unknown git error occurred
- MountainAsh
npm install --verbose <URL>
的输出结果,以便比较版本4.x.x
(可以工作)和5.x.x
。如果您正在使用NVM,切换很容易:nvm install 7
用于NPM 4,nvm install 8
用于NPM 5。祝你好运,请分享你的发现。 - Tad Lispy