github用户名密码登陆失效了

问题:

git push突然推代码需要登陆,但是用户名和密码正确输入后,却提示403

bash 复制代码
git push

# Username for 'https://github.com': ****
#Password for 'https://gyp-programmer@github.com': 
#remote: Permission to gyp-programmer/my-app.git denied to ****.
#fatal: unable to access 'https://github.com/****/my-app.git/': The requested URL returned error: 403

分析

GitHub 在 2021年8月13日 移除了对密码认证的支持。如果你尝试使用 HTTPS 方式推送代码,并且输入的是 GitHub 账户的密码,可能就会遇到这个问题.

正常情况只有开启2FA才会出现,不过方案是一样的。出现同样的问题,就按照以下的方案解决!

github issues给到的建议

然后经过尝试,可以解决,这里博主就直接把答案给大家,遇到了就按照一下解决方案处理即可,亲测有效!

解决方案

使用 Personal Access Token (PAT) 替代密码

GitHub 推荐使用 Personal Access Token (PAT) 代替密码进行 HTTPS 认证。

  • 生成 Personal Access Token:
  1. 登录 GitHub,点击右上角头像,进入 Settings。

  2. 在左侧菜单中,选择 Developer settings。

  3. 点击 Personal access tokens,然后点击 Generate new token。

  4. 选择需要的权限(例如 repo 和 workflow),然后生成 Token。

  5. 复制生成的 Token

  • 使用 Token 进行认证:

Git 提示你输入用户名和密码处: 在用户名处输入你的 GitHub 用户名。在密码处粘贴刚刚复制的 Personal Access Token。

贴图步骤

  1. 找到设置,点进去
  2. 在设置页面,翻到最下面,侧边栏,点击 Developer settings
  3. 在developer settings页面,点击 Fine-grained tokens
  1. 在当前内容页面,点击 generate new token

  2. 进去创建页面,需要关注的几个点

    • 必填项输入;
    • token有效期,按需选择,支持自定义;
    • 选择仓库类型,所有仓库或者去选择某个仓库(根据自己实际使用情况,安全第一)
  • 加入需要添加的权限,这里有仓库权限和账户权限两组,都需要去点击后在展开的选项中选择权限使用类型;
    1. 如果不知道应该怎么选择,可以全选上,然后有效期设置一天就行;
    2. 不过呢,每一项权限都有说明,比较清晰,可以抉择使用(推荐)


思路

这里给大家提供一个别的方案,有可能的解决方案,就是清理本地的git认证信息, 重新认证。例如如果你之前是https的仓库,那你可以把直接登陆的 credentials 清除!(没尝试过)

写在最后

如果该文有帮到我的铁子们,那就帮忙点赞支持一下! 感谢大家,制作不易,多多支持!

相关推荐
真就死难3 小时前
Git是什么
git
电棍2334 小时前
GITHUB的若干操作
github
机械心8 小时前
代码管理git详细使用教程及最佳实践路径
git
hkj88089 小时前
Git 常用命令
git
AI云极9 小时前
PyCharm 集成 DeepSeek:本地运行 or API 直连?打造你的 AI 编程神器!
github
WebCandy11 小时前
用Trae编辑器写一个Trae的AI对话记录导出脚本
人工智能·编辑器·github·copilot·ai编程
dawnkylin14 小时前
通过 fork 为项目做出贡献
git·github
high201116 小时前
【Github每日推荐】-- 2024 年项目汇总
github·每日推荐·2024年汇总
1379003401 天前
Git 设置代理
git