当我尝试使用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日周二到期。为什么今天这个被删除了?


当前回答

为您的帐户创建个人访问令牌(PAT)。参见这里创建PAT。PAT应该从ghp_开始 打开你的钥匙链访问应用程序,搜索GitHub,并删除你现有保存的密码 回到您的终端并尝试执行提交。它会提示您输入用户名和密码。现在,尝试输入您的PAT代替您通常的GitHub密码/密码短语。

其他回答

Android Studio Arctic Fox解决方案(Windows 10)

我在Android Studio Arctic Fox(最新版本)中使用个人访问令牌进行了身份验证,但我仍然在2021年8月14日得到了这个错误:

remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.

我在github.com上生成了一个新的访问令牌,从Android Studio中删除了我的GitHub帐户,并再次使用新的访问令牌添加帐户。但是,它仍然显示出同样的错误。

我在Stack Overflow上阅读了其他解决方案,下载了GitHub CLI,并在Windows命令提示符中成功添加了我的GitHub帐户和访问令牌,并尝试从Android Studio再次推送存储库,同样失败。

然后,在本文之后,我在命令行中执行了以下操作:

cd <project-directory>
git remote set-url origin https://<TOKEN>@github.com/<user_name>/<repo_name>.git

我从Android Studio再次推送,它终于工作了!

我花了几个小时在这个问题上,使用WSL 2 (Ubuntu 20.04 (Focal Fossa))。打开一个新的外壳对我很有用。尝试旧的外壳,它没有工作。

我也在调查GitLab,因为他们可能没有微软的文化,强迫你按照他们的方式做事(“你会喜欢这样”),或者一直发布破坏性的更改。

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

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

最近GitHub更新了他们的远程:支持密码认证。它于2021年8月13日被删除,以使用PAT(个人访问令牌)来访问GitHub API。

你可以在这里的博客文章中阅读。

现在启用PAT

登录你的GitHub账户。 按照这篇文章进行下一步操作。

现在要在命令行上使用令牌,执行以下操作:

git clone https://github.com/username/repo.git

Username: your_username
Password: your_token

请注意,您的令牌有一个过期时间,必须私下保存,并在需要在命令行上进行身份验证时使用。

小心

如果你克隆到一个存储库,该存储库属于:

组织。

确保你是那个组织的成员

或者是一些个人存储库,

请确保已启用以下功能

组织/个人需要启用远程克隆和分叉,如下所示:

进入组织设置:

启用成员特权:

密码认证支持已于2021年8月13日移除。请改用个人访问令牌。

解决方案

创建一个GitHub个人访问令牌(PAT)并复制它。 对于macOS,将其添加到GitHub下的KeyChain Access。 重点搜索→输入KeyChain→选择KeyChain访问→搜索github.com→粘贴您的PAT 对于Windows,将PAT添加到用户的Windows凭据中。 搜索→键入凭据管理器→将您的PAT添加到github.com 如果存储库是某个组织的一部分,您还需要使用个人访问令牌登录到该组织,以便该组织能够识别它。如果您已经登录,请先退出。 Git克隆照常:-)