无法克隆GitHub公共仓库提示git@github.com: Permission denied (publickey)
解决GitHub HTTPS克隆触发SSH权限错误的问题
问题分析
你执行的是HTTPS地址的克隆命令,但报错显示使用git@github.com的SSH方式验证,说明Git全局配置中可能存在强制将GitHub的HTTPS地址转换为SSH地址的规则。
解决方案
1. 检查并移除URL替换配置
执行命令查看是否存在GitHub地址的强制替换规则:
git config --global --get-regexp url
如果输出包含url.git@github.com:.insteadOf https://github.com/这类条目,执行以下命令删除该配置:
git config --global --unset url.git@github.com:.insteadOf
2. 临时绕过配置克隆
若不想修改全局配置,可直接用参数临时指定地址规则:
git clone https://github.com/github/fetch.git --config url."https://github.com/".insteadOf=git@github.com:
3. 验证SSH连接(可选)
虽然公共仓库无需SSH权限,但如果Git默认优先使用SSH,可测试连接状态:
ssh -T git@github.com
若报错,确认本地SSH公钥是否已正确添加到GitHub账户的SSH设置中(公共仓库克隆本不需要SSH密钥,若配置错误也会触发权限拒绝)。
4. 重置HTTP代理配置
若上述方法无效,尝试重置Git的HTTP代理设置:
git config --global --unset http.proxy git config --global --unset https.proxy
内容的提问来源于stack exchange,提问作者KeyB0rys
相关产品推荐
相关产品推荐

