GitHub Desktop切换登录新账号后仍显示旧账号仓库如何解决
GitHub Desktop切换账号后仍显示旧账号关联仓库排查解决步骤
按以下顺序逐一排查操作即可解决:
- 第一步:彻底清理客户端账号缓存
先完全退出GitHub Desktop:不要只点窗口关闭按钮,Windows在系统托盘找到客户端图标右键选「退出」,再打开任务管理器结束所有残留的GitHub Desktop进程;Mac在程序坞右键图标选「退出」,再开活动监视器确认没有相关后台进程。
找到客户端配置目录删除认证缓存:
Windows直接在资源管理器地址栏输入%APPDATA%\GitHub Desktop\回车,Mac打开访达按Command+Shift+G输入~/Library/Application Support/GitHub Desktop/回车,找到目录下和账号、缓存凭据相关的文件(CachedCredentials、Accounts开头的文件)直接删除。
重启客户端后重新登录新账号,先检查右上角账号显示是否为xyz@gmail.com,如果还是显示旧账号继续往下走。 - 第二步:同步修正Git全局配置与系统凭据
客户端账号切换不会自动修改本地Git的全局配置,系统凭据管理器里留存的旧账号认证信息也会导致识别异常:
打开终端/命令提示符执行git config --global --list,查看返回结果里的user.email字段,如果还是abc@gmail.com,执行git config --global user.email "xyz@gmail.com"替换为新账号绑定邮箱,user.name字段如果和新账号用户名不匹配也同步修改。
清理系统层面留存的GitHub认证信息:Windows打开「凭据管理器」-「Windows凭据」,找到所有标注为git:https://github.com的条目全部删除;Mac打开「钥匙串访问」,搜索github.com,删除所有相关的认证令牌、密码条目。 - 第三步:修正本地仓库的关联记录
做完前两步如果还看到旧账号名下的仓库,属于正常现象:GitHub Desktop的仓库列表默认留存所有你曾经在本地打开/克隆过的仓库记录,不会随账号切换自动清空,且旧仓库的远程关联还绑定着旧账号的认证信息。
对列表里的仓库分类处理:新账号本身没有访问权限的旧账号私有仓库,直接右键选「Remove from List」从列表移除即可,注意不要勾选删除本地文件的选项;新账号有权限访问的仓库,进入仓库后打开顶部菜单「Repository」-「Repository Settings」,检查远程仓库地址,如果地址里带旧账号的用户名,改成通用格式https://github.com/[仓库所属用户名]/[仓库名].git,也可以替换成你给新账号配置的SSH地址,保存后执行一次fetch操作,按提示完成新账号认证后,仓库归属就会同步更新为新账号。 - 兜底方案
以上操作都无效的话,直接卸载GitHub Desktop,卸载时勾选删除本地应用配置选项,重启电脑后安装最新版本客户端,再登录新账号即可恢复正常。
补充说明:客户端不会因为你切换账号就自动清空本地曾经打开过的仓库列表,这是产品本身的设计逻辑,不属于登录故障,不属于新账号的仓库手动从列表移除就不会影响后续使用。
内容的提问来源于stack exchange,提问作者SpideyBasit
相关产品推荐
相关产品推荐

