You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法向GitHub推送新仓库,HTTPS令牌、SSH方式均失败如何解决?

问题排查与解决方案

一、核心矛盾定位

你配置的是HTTPS远程地址但报错为SSH公钥错误,说明实际生效的远程地址大概率为SSH格式,先执行以下命令确认远程配置:

git remote -v

如果返回的origin地址前缀为git@github.com:,执行以下命令替换为你复制的HTTPS地址:

git remote set-url origin https://github.com/你的用户名/你的仓库名.git

二、HTTPS协议推送解决方案

GitHub已停止支持账号密码验证HTTPS推送,必须使用个人访问令牌(PAT)作为验证凭证,按以下步骤操作:

  • 生成PAT时必须勾选repo权限,否则无法获得仓库推送权限
  • 清空本地缓存的错误Git凭据:
    • Windows:打开控制面板→凭据管理器→Windows凭据,删除所有git相关记录
    • macOS:打开钥匙串访问,搜索github.com,删除对应凭据
    • Linux:执行git config --global --unset credential.helper临时关闭凭据缓存
  • 重新执行推送命令git push -u origin main,弹出验证框时,用户名填GitHub用户名,密码填生成的PAT即可

三、SSH协议推送解决方案

如果要使用SSH协议推送,按以下步骤修复公钥报错:

  • 检查本地SSH密钥:执行ls ~/.ssh(Windows执行dir C:\Users\你的用户名\.ssh),如果没有id_rsa和id_rsa.pub文件,执行ssh-keygen -t rsa -C "你的GitHub绑定邮箱",一路回车生成密钥
  • 复制id_rsa.pub文件的全部内容,进入GitHub设置的SSH密钥管理页面,新建SSH密钥并粘贴公钥内容保存
  • 本地执行ssh -T git@github.com测试连接,返回Hi 你的用户名! You've successfully authenticated, but GitHub does not provide shell access.即为配置成功
  • 配置完成后执行git push -u origin main即可推送

四、分支匹配注意事项

你本地当前分支为main,推送时直接指定main分支即可,无需使用master分支。


内容的提问来源于stack exchange,提问作者VaultDweller

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 09:54:04