如何在Windows10系统的GitHub Bash中更换GitHub Token以解决私有仓库推送403权限拒绝问题
解决Windows10 GitHub Bash中更换GitHub Token的问题
我来帮你搞定这个权限拒绝的问题!之前用同事的Token登录后,Git会自动把凭据存在Windows系统里,所以你执行push时不会触发登录提示,直接复用旧Token导致403错误。下面是具体的解决步骤:
第一步:清除已保存的旧凭据(核心操作)
Windows会把Git的登录凭据存在系统凭据管理器中,必须先删除旧的,才能触发新的登录验证:
- 按下
Win+R组合键,输入control keymgr.dll并回车,打开凭据管理器 - 切换到「Windows凭据」标签页,找到所有和
github.com相关的条目(通常显示为git:https://github.com或包含同事用户名的条目) - 右键点击这些条目,选择「删除」并确认
第二步:针对单个项目更换Token
如果你只想为当前项目配置自己的Token,不影响全局Git设置,可以按以下步骤操作:
- 打开GitHub Bash,进入你的项目根目录
- 先查看当前项目的远程仓库地址,确认是HTTPS格式:
正常输出会类似:git remote -vorigin https://github.com/你的用户名/你的私有仓库.git (fetch) - 直接修改远程仓库地址,嵌入你的个人访问令牌(PAT):
把git remote set-url origin https://<你的个人Token>@github.com/你的用户名/你的私有仓库.git<你的个人Token>替换为你自己生成的GitHub Token - 现在执行
git push即可正常推送。如果之后不想让Token明文保存在配置文件中,可以再把远程地址改回普通HTTPS格式:
下次操作时Git会自动弹出登录窗口,让你输入自己的用户名和Tokengit remote set-url origin https://github.com/你的用户名/你的私有仓库.git
第三步:全局配置Git凭据助手(推荐长期使用)
如果希望Git自动记住你的凭据,不用每次手动输入,可以配置全局的凭据助手:
- 在GitHub Bash中执行以下命令(适配不同Git版本):
- 对于较旧的Git版本:
git config --global credential.helper wincred - 对于较新的Git版本(2.23+):
git config --global credential.helper manager-core
- 对于较旧的Git版本:
- 配置完成后执行
git push,系统会弹出GitHub登录窗口,输入你的用户名和Token,之后Git会自动保存这个凭据,后续操作无需重复输入
额外检查:确认Git用户配置
有时候全局Git用户信息不匹配也会导致权限问题,你可以检查并修改:
- 查看当前全局用户信息:
git config --global user.name git config --global user.email - 如果显示的是同事的信息,修改为你自己的GitHub用户名和绑定邮箱:
git config --global user.name "你的GitHub用户名" git config --global user.email "你的GitHub绑定邮箱"
内容的提问来源于stack exchange,提问作者Rokace
相关产品推荐
相关产品推荐

