无法使用 git 中的 npm 包进行安装

cat*_*med 13 javascript git github npm

我正在尝试从 git 安装软件包,这是我之前分叉的。

我尝试

npm i catsaredoomed/invest-openapi-js-sdk --save-dev
Run Code Online (Sandbox Code Playgroud)

我有

npm ERR! prepareGitDep 2> npm WARN install Usage of the `--dev` option is deprecated. Use `--also=dev` instead.
Run Code Online (Sandbox Code Playgroud)

此外,这个错误甚至不依赖于我提供的标志。我可以设置 --save 或根本不提供,无论如何它仍然存在。肯定--also=dev不会改变这个现状

UPD:npm -v 6.14.13

更新2:

无论出于何种原因,npm 似乎都需要 sudo 来运行此命令(我之前没有将 sudo 与 npm 一起使用,并且应用程序的所有其他包都是在没有 sudo 的情况下安装的)。因此,使用 sudo 这个命令会运行,但只会产生新的错误

    npm ERR! command git --no-replace-objects ls-remote ssh://git@github.com/catsaredoomed/invest-openapi-js-sdk.git
npm ERR! git@github.com: Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
Run Code Online (Sandbox Code Playgroud)

无论出于何种原因,当要求公开(!)回购时,它都需要密钥

UPD 3:NodeJS(带有 npm)通过 sudo dnf 作为 Fedora 模块安装,git 照常 sudo dnf install,没什么特别的

Von*_*onC 11

无论出于何种原因,当要求公开(!)回购时,它都需要密钥

但是... SSH URL始终需要公钥才能首先对用户进行身份验证,然后访问存储库(这将被授予,因为存储库是公共的)。

如果 SSH 出现问题:

git config --global url."https://github.com/".insteadOf ssh://git@github.com/
git config --global url."https://github.com/".insteadOf git@github.com:
Run Code Online (Sandbox Code Playgroud)

甚至:

git config --global url."https://".insteadOf ssh://
Run Code Online (Sandbox Code Playgroud)

这样,该npm命令将使用 HTTPS URL 而不是 SSH URL。


小智 0

npm i catsaredoomed/invest-openapi-js-sdk --only=dev 
Run Code Online (Sandbox Code Playgroud)

尝试一下,--save-dev由于未来版本的更改,该选项已被弃用。