昨天升级了 windows 版本的 git,之后拉取代码提示公钥无效:

按照旧文(https://www.yangdx.com/2020/03/113.html)的方法重新生成 Key,也还是提示错误。

今天上午在 Gitee 的帮助模块才看到了这个问题的说明(https://gitee.com/help/articles/4352):

2021年09月26日发布的OpenSSH 8.8中移除了对RSA-SHA1的支持

  • 最新的git for windows 2.33.1版本已使用OpenSSH 8.8
  • arch和manjaro等发行版的滚动升级比较激进,使用pacman -Syu就会升级所有软件到最新版本
  • 此时的表现就是之前还可以正常使用,pacman -Syu或升级到git for windows 2.33.1之后使用git pull就出现fatal: 无法读取远程仓库的提示

也就是说,之前的 RSA 算法生成的 Key,已经不支持了。

解决办法,使用其他算法如 ed25519 生成新 Key:

ssh-keygen -t ed25519 -C "your@example.email"

最后,别忘了到 Gitee 重新添加生成的公钥。