Git推送至仓库时出现403权限拒绝错误,求助解决
解决Git推送403权限拒绝问题
以下是几个深层排查方向,你可以逐一尝试:
确认远程仓库URL准确性
执行git remote -v查看当前远程仓库地址:- 若为HTTPS地址,检查地址中的用户名是否与仓库实际拥有者一致,或是你是否克隆了无推送权限的仓库(比如他人的公共仓库未添加你为协作者)。
- 若为SSH地址,确认格式是
git@github.com:用户名/仓库名.git,无拼写错误。
清除系统凭据缓存
系统凭据管理器可能留存了旧的错误凭据,跳过你新设置的用户配置:- Windows:打开「凭据管理器」→「Windows凭据」,删除所有GitHub相关条目后重新推送。
- Mac:在终端执行
security delete-internet-password -s github.com,清除钥匙串中的GitHub凭据。 - Linux:删除
~/.git-credentials文件(若存在),或执行git config --global --unset credential.helper禁用凭据助手。
深度排查SSH连接问题
若使用SSH方式,先测试连接有效性:
执行ssh -T git@github.com,查看返回的用户名是否为你当前操作的账户。若返回其他账户:- 检查
~/.ssh/config文件,是否存在针对github.com的配置指定了错误密钥(比如IdentityFile指向其他账户的密钥文件),删除或修改该配置。 - 确认当前使用的SSH公钥已添加到GitHub账户的「Settings→SSH and GPG keys」中,未添加则重新上传。
- 检查
验证仓库权限
登录GitHub,进入目标仓库的「Settings→Collaborators and teams」,确认你的账户在协作者列表中并拥有推送权限。若不在,联系仓库所有者添加。排除代理干扰
代理或VPN可能干扰权限验证,尝试关闭代理后重新推送,或执行以下命令清除Git的代理配置:git config --global --unset http.proxy git config --global --unset https.proxy
内容的提问来源于stack exchange,提问作者Gergő Szabó
相关产品推荐
相关产品推荐

