Git推送GitHub仓库报Authentication failed认证失败问题求助
故障根因
该认证失败与你输入的账号登录密码正确性无关。GitHub自2021年8月13日起,已全面移除HTTPS协议下使用账号登录密码完成Git操作认证的支持,所有需要权限校验的Git操作,必须使用个人访问令牌(PAT)替代登录密码完成验证。
解决步骤
- 生成符合权限要求的个人访问令牌
登录GitHub账号,进入个人设置下的开发者设置板块,选择生成经典类型个人访问令牌;权限配置至少勾选repo全量权限,按需设置令牌有效期,生成后立即复制保存令牌值,该页面关闭后无法再次查看令牌内容。 - 清理本地残留的无效凭据
打开系统凭据管理工具:Windows系统打开「凭据管理器」的Windows凭据分类,macOS系统打开「钥匙串访问」,搜索所有关联github.com域名的已保存凭据,全部删除,避免旧凭据被Git自动调用导致认证失败。 - 重新完成身份校验
进入本地仓库目录,重新执行git push -u origin main命令,弹出认证输入框时:- 用户名栏正常填写你的GitHub账号用户名
- 密码栏不要填写账号登录密码,直接粘贴之前保存的个人访问令牌,确认后即可完成认证推送。
- 配置本地免密(可选)
如需避免每次操作重复输入令牌,可执行命令git config --global credential.helper store开启本地凭据存储,首次输入正确令牌后,后续Git操作会自动读取凭据,无需重复手动输入。
注意:你此前尝试的删除.ssl文件夹内容、反复重启设备、切换远程仓库地址等操作,和当前认证故障无关联,无法解决问题;随意删除SSL证书目录内容反而可能触发后续HTTPS证书校验异常,不建议执行这类无针对性的排查操作。
内容的提问来源于stack exchange,提问作者developer
相关产品推荐
相关产品推荐

