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 清除!(没尝试过)

写在最后

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

相关推荐
zzqssliu2 小时前
煤炉自动代拍系统的队列设计与超时控制机制
git·github
一支绝命钩3 小时前
FPGA工程Git常用操作手册
git
fthux5 小时前
“装闭”,让装修套路“装”不下去
人工智能·ai·开源·github·open source
不搞学术柒柒7 小时前
Git新功能完整开发提交流程
git
用户84913717547168 小时前
想做护眼工具却脑子一片空白?我用 OpenSpec 把模糊想法聊成了 v0.1
github·vibecoding
wangruofeng9 小时前
git-filter-repo 把 .git 从 112MB 砍到 1.4MB,但漏推 tag 让 clone 又胖回来
github·devops
峰向AI9 小时前
Block 放出大招!Buzz:一个中继统一代码、聊天、CI 全流程
github
dong_junshuai9 小时前
每天一个开源项目#47 4.4K Stars 的 LikeC4:让架构图随代码进化
github
午安~婉11 小时前
Git中SSH连接
前端·git·gitee
888CC++12 小时前
VS Code Git 工作树:解锁多分支并行开发新体验
git