gitHub不能用密码推送了,必须要使用令牌

Posted 几叶知期

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gitHub不能用密码推送了,必须要使用令牌相关的知识,希望对你有一定的参考价值。

有一段时间没使用github去push项目了,今天push之后,根据提示输入账号密码,但是失败了,报错如下:

support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/skrqwa/test.git/'
wenanqin@WenandeMacBook-Air test % 

第一句话的大致意思就是原先的密码凭证从2021年8月13号开始就不能用了。怎么办呢?解决办法就是使用个人令牌(personal access token),就是把密码换成token来进行验证。

1.什么是token(令牌)

Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。
Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。
Token的目的是为了减轻服务器的压力,减少频繁的查询数据库,使服务器更加健壮。

2.token的特点

唯一:令牌特定于github,可以按使用和设备生产
可撤销:可以随时单独撤销令牌,无需更新未受影响的数据
有限:令牌可以缩小范围以仅允许用例的访问

3.如何在github上生成自己的令牌

1.点击github的设置settings

2.往下拉,选择开发者设置 developer settings

3.选择personal access tokens下的token(classic),然后generate new token

4.设置token的有效期,访问权限等

  • 访问仓库权限,选repo
  • 删除仓库权限,选delete_repo



5.把生成的token(一串字符)保存下来,下次刷新网页后会消失

3.使用token进行push

在输入密码的位置粘贴你的token即可进行push操作了。
也可以 把token直接添加远程仓库链接中,这样就可以避免同一个仓库每次提交代码都要输入token了:

git remote set-url origin https://<your_token>@github.com/<USERNAME>/<REPO>.git
  • <your_token>:换成你自己得到的token
  • < USERNAME >:是你自己github的用户名
  • < REPO>:是你的仓库名称

原文链接:https://blog.csdn.net/qq_41646249/article/details/119777084

以上是关于gitHub不能用密码推送了,必须要使用令牌的主要内容,如果未能解决你的问题,请参考以下文章

小白必须要会的Github操作 确定不进来看看?

Docker推送镜像到私有仓库,https必须要使用443端口吗?

解决Git推送时密码认证失败

必须要懂得的密码技术

使用密码短语(如 SSH 密钥)存储 Github / Gitea 身份验证令牌

划重点|iOS15正式发布, 全新的通知推送系统,你必须要知道!