kex_exchange_identification: Connection closed by remote host

fatal: Could not read from remote repository

Error: Spawn failed

出现的问题

  • 今天博客在hexo d部署的时候,出现以下问题:

content-381

原因分析

  • 博客在本地测试完全没有问题,只有部署的时候出现错误。

    应该是Git连接不到GitHub的远程仓库了。

解决方案

未能部署成功可能是网络原因,请多次尝试进行博客部署,一直未成功请参考本方案。

  • 如果在GitHub有ssh key,则删除新建;没有则直接新建。

    1. 在博客根目录下,打开Git Bash。

    2. ssh-keygen -t ed25519 -C “your_email@example.com”

      如果需要输入,一路回车。

    3. ssh-agent bash

      必须输入这个命令,不然报错:Could not open a connection to your authentication agent.

    4. ssh-add ~/.ssh/id_ed25519

    5. ssh公钥复制到剪贴板:

      clip < ~/.ssh/id_ed25519.pub

      一定要这样复制,不然会报错:Key is invalid. You must supply a key in OpenSSH public key format

    6. 在GitHub账户中,找到Settings

    7. 单击New SSH keyAdd SSH key

    8. Title命名,并将刚才在剪切板的ssh key复制过来

    9. 单击Add SSH key

    10. 如有提示,请确认您的GitHub密码。

    11. 所有操作完成后进行测试:

      ssh -Tv git@github.com