Git 连接 GitHub 报错全记录从 SSL 证书到 SSH 密钥一步步踩坑与解决问题背景我在本地用 PyCharm 开发了一个串口聊天工具想推到 GitHub 新建的仓库chatByCom。结果从 Push 开始一路遇到各种错误折腾了小半天才彻底解决。本文按时间线记录所有报错和解决方法希望能帮到遇到同样问题的你。第一个错误SSL 证书问题HTTPS报错信息fatal: unable to access https://github.com/wanghannew1/chatByCom.git/: SSL certificate problem: unable to get local issuer certificate原因本地 Git 无法验证 GitHub 的 HTTPS 证书常见于公司网络有代理或防火墙Git 自带的 CA 证书包过旧或损坏使用了自签名证书的环境尝试解决未成功我按照网上教程更新了cacert.pem并配置gitconfig--globalhttp.sslCAInfoC:\Users\...\cacert.pemPush 仍然报同样的错误。跳过 SSL 验证临时方案在 PyCharm 的 Terminal 中执行gitconfig--globalhttp.sslVerifyfalse再 Push暂时绕过了 SSL 检查。⚠️ 注意这只是临时方案长期建议还是解决证书问题或用 SSH。第二个错误SSH 端口 22 被拒绝既然 HTTPS 证书老出问题我决定改用 SSH 方式连接 GitHub。报错信息ssh: connect to host github.com port 22: Connection refused Could not read from remote repository.原因公司/学校网络通常封禁了 22 端口导致 SSH 根本无法连上 GitHub。解决使用 443 端口GitHub 提供了一个备用 SSH 地址ssh.github.com走 443 端口HTTPS 端口一般不会被封。将远程仓库地址改为ssh://gitssh.github.com:443/wanghannew1/chatByCom.git在 PyCharm 中操作Git → Manage Remotes → 编辑 origin URL。这次连接终于通了但又报了新错误 ⬇️第三个错误Permission denied (publickey)报错信息Warning: Permanently added [ssh.github.com]:443 (ED25519) to the list of known hosts. gitssh.github.com: Permission denied (publickey).原因SSH 连接已经成功建立但我还没配置 SSH 密钥GitHub 拒绝了我的身份验证。这个报错说明网络已通离成功只差最后一步。解决生成并添加 SSH 密钥1. 检查是否有现成密钥ls~/.ssh/我是新环境啥也没有。2. 生成新密钥ssh-keygen-ted25519-C你的GitHub邮箱一路回车即可不设密码方便推送。3. 复制公钥cat~/.ssh/id_ed25519.pub输出一整行ssh-ed25519 AAAA...开头的内容全部复制。4. 添加到 GitHub浏览器打开https://github.com/settings/keys点击New SSH key粘贴公钥保存。5. 测试连接ssh-Tgitssh.github.com-p443看到Hi xxx! Youve successfully authenticated就表示成功。6. 推送代码gitpush origin master一切正常代码终于推上去了总结这次踩坑的关键路径是HTTPS SSL 证书错误 → 跳过 SSL 验证临时 → 换 SSH 遇到端口 22 被禁 → 改用 443 端口 → 配置 SSH 密钥 → 成功推送 ✅最终生效的配置远程地址ssh://gitssh.github.com:443/wanghannew1/chatByCom.gitSSH 密钥ed25519添加到 GitHub 账户端口443避免公司网络封禁 22给同样踩坑的你的建议公司网络环境下SSH 443 端口是更稳妥的方式。Permission denied (publickey)不是网络问题是密钥没配别像我一样反复检查网络。善用ssh -T测试连接状态能帮你快速定位问题在哪个环节。希望这篇踩坑记录对你有帮助。如果还有问题欢迎评论区交流