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


当前回答

对于macOS用户,只需简单地遵循以下步骤:

(我从Kartik Tyagi那里截取了这部分,但我补充了一个被遗漏的关键部分。)

转到此链接:https://github.com/settings/tokens(配置文件->设置->开发人员设置->个人访问令牌)。(不要去仓库设置;这是你的个人资料设置) 生成一个新的令牌并将其复制粘贴到某个安全的地方。 现在在你的Mac电脑上搜索一个名为Keychain Access的应用程序。 搜索github.com。

如果不存在:

5.1. 点击“创建一个新的钥匙链项目”按钮(记事本笔图标)。

Keychain项目名称:https://github.com

帐户名:https://github.com(必须这样保存。不要添加www。它将无法正常工作)

密码:粘贴您生成的令牌

如果存在:

5.2. 如果有多个GitHub登录,然后选择Kind: Internet password,双击它。

点击显示密码,然后输入你的Mac密码并按enter键。 密码现在应该可见了。现在,只需粘贴在第2步中生成的令牌,然后单击Save changes。

应该就是这样了。享受吧!

其他回答

如果您想第一次克隆:

git clone https://<repository_owner>:<personal_access_token>@github.com/<repository_owner>/<repo>.git

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

对于Mac

如果你在“GitHub”的钥匙链上没有任何东西,创建一个新的钥匙链项目并添加你的详细信息。从GitHub插入令牌来代替密码。

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

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

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

现在启用PAT

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

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

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

Username: your_username
Password: your_token

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

小心

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

组织。

确保你是那个组织的成员

或者是一些个人存储库,

请确保已启用以下功能

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

进入组织设置:

启用成员特权: