Git终端推送文件至新GitHub账户关联旧账户问题求助
解决Git推送GitHub账户凭据错误及主机真实性验证问题
1. 彻底清理Git凭据存储
Windows系统
打开「凭据管理器」→「Windows凭据」,删除所有和git、github.com相关的凭据。
macOS系统
打开「钥匙串访问」,搜索github,删除所有相关的密码和SSH条目。
Linux系统
执行命令清理凭据缓存:
git config --global credential.helper unset rm -rf ~/.git-credentials
2. 重置仓库远程URL
先检查当前远程地址:
git remote -v
若URL包含旧账户信息,重新设置为新账户的仓库HTTPS地址:
git remote set-url origin https://github.com/你的新账户名/仓库名.git
如果使用SSH,需生成新密钥并添加到新GitHub账户:
ssh-keygen -t ed25519 -C "你的新账户邮箱"
将~/.ssh/id_ed25519.pub内的内容复制到新账户的SSH密钥设置中。
3. 配置Git用户信息匹配新账户
全局配置(所有仓库生效):
git config --global user.name "你的新账户用户名" git config --global user.email "你的新账户邮箱"
单个仓库单独配置(进入仓库目录执行):
git config user.name "你的新账户用户名" git config user.email "你的新账户邮箱"
4. 处理主机真实性验证提示
当出现以下提示时:
The authenticity of host 'github.com (20.207.73.82)' can't be established.
ED***** key fingerprint is SHA256:some SHA256 code.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
直接输入yes确认即可,Git会将GitHub主机指纹保存到~/.ssh/known_hosts,后续不再提示。
5. 测试推送
执行命令验证:
git add . git commit -m "测试新账户推送" git push origin main
此时输入新GitHub账户的用户名和个人访问令牌(GitHub推荐用令牌代替密码)即可完成推送。
内容的提问来源于stack exchange,提问作者Jigyasu Tanwar
相关产品推荐
相关产品推荐

