1 Github操作需使用新的Personal Access Token

今天早上向Github推送代码的时候突然发现不能推送了,出现了以下错误:

remote: Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead.
remote: Please see https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/ for more information.

看了一下官方文档的意思就是之后不能使用账号密码的方式认证,而需要使用新推出的Personal Access Token的方式进行认证,所以研究了一下。

2 Github使用Personal Access Token进行仓库认证

按照官网的文档,需要先申请Person Access Token,然后再使用。

2.1 Personal Access Token申请

个人主页下点击Setting

Github – 使用新的Personal Access Token进行仓库认证-StubbornHuang Blog

在Setting页面下选择Developer Setting

Github – 使用新的Personal Access Token进行仓库认证-StubbornHuang Blog

然后选择Personal Access Tokens

Github – 使用新的Personal Access Token进行仓库认证-StubbornHuang Blog

在Token申请页面需要填入Token的名称用于辨别不同权限和功能的token、Token过期时间、以及Token的权限范围,如果只需要对仓库进行拉取,推送操作,勾选第一个repo即可,其他的一些权限描述可参考官方文档:https://docs.github.com/en/developers/apps/building-oauth-apps/scopes-for-oauth-apps

Github – 使用新的Personal Access Token进行仓库认证-StubbornHuang Blog

全部设置好之后选择最下方Generate token即可生成Personal Accesss Token

Github – 使用新的Personal Access Token进行仓库认证-StubbornHuang Blog

2.2 使用Personal Access Token进行认证

通过查看官方文档:https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

我们可以在Https方式下使用Personal Access Token管理仓库,如果仓库以前是ssh方式则需要切换到Https方式。

在Github之前的Https方式下是输入Github账号和密码就可以验证成功的,不过现在需要将之前输入的密码修改为输入Person Access Token。

2.2.1 新仓库使用Personal Access Token

新仓库在clone的时候就输入账号和Person Access Token即可:

$ git clone https://github.com/username/repo.git
Username: your_username // 你的用户名
Password: your_token // 你的Personal Access Token

2.2.2 已有仓库使用Personal Access Token

在已有仓库中使用git命令:

git config --system --unset credential.helper

清除已有的账号密码,然后在进行相关的git操作后需要你输入新的账号和密码,这时候输入账号和Personal Access Token即可

如果是Windows系统也可以在控制面板-用户账户-凭据管理器中删除对应仓库的账号和密码即可输入新的账号和Person Access Token即可