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

GitHub 403权限错误:使用PAT仍无法执行git push

Git Push 403权限拒绝问题解决办法

几个大概率的问题点及修复步骤

1. 本地缓存了旧账号凭据,Git自动用旧认证

旧账号的用户名/密码可能还存在本地凭据管理器中,Git会自动调用旧凭据完成认证,导致新账号权限被拒:

  • Windows:打开「凭据管理器」→「Windows凭据」,删除所有与github.com相关的条目后重新执行push。
  • Mac:在终端执行 git credential-osxkeychain erase,按提示输入 host=github.com 和 protocol=https,回车确认删除。
  • Linux:执行 git config --global credential.helper store,然后打开 ~/.git-credentials 文件,删除github相关的行,或直接删除该文件。

2. PAT令牌权限不足

创建PAT时未勾选必要权限,导致无法操作仓库:

  • 重新生成PAT,务必勾选repo权限(全选其子项),若涉及GitHub Actions可额外勾选workflow权限,先确保权限充足能正常push,再按需调整范围。

3. 本地仓库远程URL配置错误

检查本地仓库关联的远程地址是否指向新账号的仓库,避免仍绑定旧账号地址:

  • 执行 git remote -v 查看当前远程地址,确认是否为 https://github.com/<你的新用户名>/test.git。
  • 若地址错误,执行 git remote set-url origin https://github.com/<你的新用户名>/test.git 修正。

4. 邮箱关联的账号冲突

同一邮箱绑定过新旧账号,GitHub可能存在认证混淆:

  • 登录新账号,进入「Settings」→「Emails」,确认该邮箱已设为主邮箱,且旧账号已彻底删除(若旧账号仍存在,需先解绑该邮箱)。
  • 本地Git配置的邮箱要与新账号主邮箱一致:执行 git config --global user.email "你的邮箱"、git config --global user.name "你的新用户名"。

5. 直接将凭据嵌入远程URL尝试

若上述方法均无效,可跳过凭据输入步骤,直接将用户名和PAT写入远程URL:

  • 执行 git remote set-url origin https://<你的新用户名>:<你的PAT令牌>@github.com/<你的新用户名>/test.git,之后再执行git push。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 03:41:29