npm install报错npm ERR! fatal: Could not read from remote repository

257 阅读2分钟

前言

引起该报错的原因有很多种,具体需要看控制台的输出(一般看该行报错的前面报错行)。然后具体问题具体分析。可能是ssh引起的,也有可能是仓库本来就不存在等等。

本文主要解决由于ssh引起的报错。

注意:

  1. 文章中提到的.ssh文件夹在C:\Users\86177文件夹下(具体看个人电脑)。该文件夹下有如下文件:
    1722778426763.jpg
  2. 文章中提到的ssh有关的命令在cmd可能不能使用,推荐使用git bash。

具体报错情况

image.png 这个报错的原因是没有在自己远程的github下设置ssh key。

此时如果执行ssh -T git@github.com,也会报相同的错误。 image.png

解决办法

1. 生成ssh key

ssh-keygen -t rsa -C "xxx@example.com"

cc76d0515a2173001f4b7b6cbab9f01.png
注意:

  • "xxx@example.com"是注册github的邮箱。
  • 如果遇到需要输入密码的情况,不用管,一路回车即可。
2. 将ssh key写入id_rsa

ssh-add ~/.ssh/id_rsa

1722780126584.jpg
注意,可能报错:

image.png

解决办法:先执行eval `ssh-agent -s````。再执行ssh-add ~/.ssh/id_rsa```。

3. 将生成的ssh key加入github中
  1. 复制id_rsa.pub的内容。id_rsa.pub文件可能打不开,可以使用复制命令:clip < ~/.ssh/id_rsa.pub
  2. 登录github,将ssh key加入到github中(位置如下)。点击New SSH Key(title可以随便填)。

1722775242657.jpg

6. 验证ssh key

ssh -T git@github.com

f96e3ab9105df97a3d35634c528548d.png

执行ssh -T git@github.com时可能遇到的几种报错

报错一

image.png 此时,如果执行npm install会报如下的错误: image.png 原因:.ssh文件夹下没有known_hosts文件。
解决办法:执行ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts

报错二

image.png 此时,如果执行npm install会报如下的错误: 1722777289138.jpg 原因:
id_rsa.pub文件中key和known_hosts文件中的key不一致。(为了模拟报错,我手动把known_hosts中key改变,此时要改变key的后几位,改变前几位模拟不出这个错误)。
解决办法:
1、删除已有known_hosts文件。可以去直接.ssh文件夹下删除。也可以使用指令ssh-keygen -R github.com
2、执行ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts

另外的解决办法

网上还提供了另外一种解决办法,我试过,是失败的。但是还是介绍一下,具体如下:

  1. 先执行git config --global http.sslverify "false"。作用是取消ssl认证。
  2. 如果npm install依然报错,再执行git config --global url."https://".insteadOf git://