npm ERR! code 128 npm ERR! command git --no-replace-obojects ls-remote ssh://git@github.com/xx.git解决

前情提要

由于最近公司安排,导致博主一下子忙了起来,本来在单位干的活也得挪到家里了。因为家里的电脑没有装过git,无奈只能从头整了,结果安装git过程中没错,在 npm intsall 项目时出了问题,不过还好有惊无险的解决了,今天正好有空,提供一下解决思路,给遇到这个问题的小伙伴们提供个答案

问题说明

这个 install 安装提示就长下面这样,看起来这一串子代码很简单,跟正常的报错比甚至少了很多代码。但是解决起来可不是这么回事,一开始博主以为是简单的,某个包之前冲突或版本不对,结果调试了半天还是卡在这。
在这里插入图片描述

解决思路及方案

首先我们要找到报错信息中,关键提示的几句话,如下图。简单看就是我们对这个ssh://git@github.com/nhn/raphael.git 地址的代码库没有克隆权限,但是按理说不可能哈,因为这是一个github 开源库,不应该需要权限。
在这里插入图片描述
正好报错信息中提供了远程仓库的 SSH 地址,于是博主根据 SSH 地址改成了 HTTP 版 https://github.com/nhn/raphael 路径,去查看下具体仓库,如下图。
在这里插入图片描述
由于访问时博主正好是没登录状态,所以当点开克隆部分时,我们可以看到代码仓库中压根就没有 SSH 选项。此时博主疑惑了,为了排除原因博主决定登录试试,结果一登录看了下克隆部分,居然有 SSH 选项了,如下图。
在这里插入图片描述
经历这一番操作,博主终于明白了原因,原来是因为这个前端开源框架第三方克隆依赖的是 SSH 的方式,而这个SSH需要登录才能访问,所以每次运行到这个包才报错。而解决办法也很简单,就像 GitHub 提示的 Use a password-protected SSH key 那样,我们在github配置一个SSH密钥即可正常克隆了。
PS:防止有小伙伴不知道怎么配置,我把配置官网教程的路径放在下面
https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

总结

到此就解决了该问题,其实博主调了半天没出来,主要原因还是太依赖经验了,因为之前出这种问题基本都是包冲突的影响,重新改改版本 install 一下就行。这次给博主提了个醒,以后还是要"认真审题"。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值