求助:无法推送代码至GitHub仓库,遇远程权限拒绝403错误
无法从VS Code推送代码至GitHub(403权限错误)
执行命令:
git push -u origin main
出现以下错误:
remote: Permission to RoBiUlHaSaNj/lern_git.git denied to RoBiUlHaSaNj. fatal: unable to access 'https://github.com/RoBiUlHaSaNj/lern_git.git/': The requested URL returned error: 403
输入账号密码时提示:Authorization failed。
已尝试的操作:
- 卸载并重装VS Code
- 生成SSH密钥并添加至GitHub
- 使用个人访问令牌替代密码
- 清除Git凭据缓存
- 重新克隆仓库
- 验证仓库访问权限
- 参照多个在线指南(YouTube、Stack Overflow)
排查与解决步骤
确认远程仓库URL协议
先查看当前仓库的远程地址类型:git remote -v如果显示的是HTTPS地址,但你已经配置了SSH密钥,直接切换为SSH格式:
git remote set-url origin git@github.com:RoBiUlHaSaNj/lern_git.git切换后再次尝试推送。
验证SSH密钥关联的账号
执行命令确认当前SSH密钥对应的GitHub账号:ssh -T git@github.com如果返回的账号不是
RoBiUlHaSaNj,说明本地使用了其他账号的密钥。可以删除多余的SSH密钥文件,或者在~/.ssh/config中添加专属配置:Host github.com User git IdentityFile ~/.ssh/你的正确密钥文件名检查个人访问令牌权限
若使用HTTPS方式,确保生成的个人访问令牌勾选了repo权限(仓库读写权限),且未过期。重新生成令牌时仅勾选必要权限,避免权限缺失或令牌失效。彻底重置Git凭据
清除本地保存的旧凭据后重新验证:- Windows:打开「凭据管理器」,找到
git:https://github.com的条目并删除 - macOS:执行
security delete-generic-password -l "git:https://github.com" - Linux:执行
git config --global credential.helper "",之后推送时会重新提示输入凭据
- Windows:打开「凭据管理器」,找到
确认仓库权限归属
登录GitHub进入RoBiUlHaSaNj/lern_git仓库,检查当前账号是否为仓库拥有者或协作者,是否具备推送权限。如果是fork的仓库,要确保推送目标是自己的fork仓库而非原仓库。
内容的提问来源于stack exchange,提问作者hasan
相关产品推荐
相关产品推荐

