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

Git推送代码提示Permission denied权限被拒,切换邮箱后仍报错

问题排查与解决办法

我来帮你梳理下导致这个403权限错误的几个常见原因,以及对应的解决步骤:

1. 当前仓库的本地邮箱配置和全局配置不一致

Git的配置分全局级和仓库级两种,你用git config --global user.email看的是全局设置,但你当前的Android代码仓库可能还保留着旧的abc@gmail.com配置。

  • 先检查当前仓库的本地邮箱:执行git config user.email(不带--global参数)
  • 如果结果是旧邮箱,就用这个命令修改本地仓库配置:git config user.email "xyz@gmail.com"

2. 系统缓存了旧的Git登录凭证

很多操作系统会自动缓存你之前的Git登录信息(比如abc@gmail.com的密码或访问令牌),哪怕你改了邮箱,推送时还是会用旧凭证去验证,自然会被拒。

  • Windows:打开「凭据管理器」→「Windows凭据」,找到所有和GitHub相关的条目,删除后重新执行git push,会提示你输入新的凭证(推荐用GitHub个人访问令牌PAT,不要用账号密码)
  • Mac:打开「钥匙串访问」,搜索「GitHub」,删除对应的密码条目,重新推送即可
  • Linux:可以先执行git credential-cache exit清除缓存,或者直接编辑~/.git-credentials文件,删除旧的GitHub凭证行

3. 你的xyz@gmail.com账号没有仓库推送权限

先确认这个xyz@gmail.com账号确实拥有ScanFiles.git仓库的写权限:要么你是仓库的所有者,要么被仓库主人添加为协作者并赋予了推送权限。如果没有权限,哪怕邮箱配置对了也会报403,这时候需要联系仓库管理员添加权限。

4. 全局邮箱的拼写错误

你提到执行全局邮箱命令显示的是xyc@gmail.com,但你要关联的是xyz@gmail.com——这里是不是手滑打错了?如果是,先修正全局邮箱:

git config --global user.email "xyz@gmail.com"

按照上面的顺序排查,一般就能解决这个权限问题啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:43:39