当我尝试使用git pull时,我在控制台上得到了这个错误:

remote:在2021年8月13日删除了对密码认证的支持。请改用个人访问令牌。 remote:请参阅https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/了解更多信息。 致命:无法访问“…”:请求的URL返回错误:403

这很奇怪,因为我只是在两周前按照文档在GitHub上创建了一个令牌。该代币将于2021年10月26日周二到期。为什么今天这个被删除了?


当前回答

我无法克隆总是给出此错误的项目。我鼓励的解决方案是,在生成token之后,我按照下面所述的操作。

使用个人访问令牌克隆新项目。

对于克隆,您只需要像在第2步中所做的那样修改URL。

克隆存储库的旧方法:

git clone repository_URL folder_name

git clone https://github.com/<user>/<repository> my_project

使用个人访问令牌进行克隆的新方法:

git clone https://<token>@github.com/<user>/<repository> my_project

我分享我的解决方案。

其他回答

到目前为止,我找到的最佳解决方案是:

安装GitHub CLI, brew Install gh或查看其他操作系统如何安装 在终端中输入gh auth login 这样做: 您想登录哪个账户? 选择GitHub.com Git操作的首选协议是什么? 选择HTTPS 用你的GitHub凭证验证Git ? 选择是的 您想如何验证GitHub CLI? 选择“使用web浏览器登录” (复制一次性代码粘贴到浏览器) 按“Enter”在浏览器中打开github.com

在GitHub中从设置→开发人员设置生成访问令牌。

如果你在过去克隆了你的存储库,并将其作为原始存储库,那么你可以更改身份验证,

git remote set-url origin https://<token>@github.com/<username>/<repo>.git

如果您打算在2021年8月13日之后克隆存储库,那么您可以使用普通克隆命令并在密码字段设置生成的访问令牌。

使用我的账户→设置→开发人员设置→个人访问令牌→生成新的令牌。

git remote set-url origin https://<token>@github.com/<username>/<repo>

对于任何使用Sourcetree作为Git客户端的人,打开首选项→进入帐户选项卡→添加GitHub帐户→认证类型=基本→填写您的GitHub帐户和您创建的GitHub访问令牌作为密码→使用HTTPS协议→完成!

Mac用户

生成一个令牌并将其设置在keychain中。

这个简短的视频很好地解释了这一点。

Windows用户

您需要使用新生成的令牌来设置Credential Manager,而不是密钥链。

这里有一个关于Windows的快速视频