当我尝试拉入或推入 GitHub 时,我收到一条错误消息:"Please use a personal access token instead."

When I try to pull or push in GitHub, I am getting an error message: "Please use a personal access token instead."

我通过 SourceTree 将版本控制用作 GitHub,但从 8 月 13 日开始失败,下面是我从 GitHub.

得到的错误

remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.

有人知道问题出在哪里,或者我如何使用个人访问令牌?

由于 OP 使用的是 SourceTree,请执行以下操作:

  1. 在 Github 帐户设置中生成您的 Personal access tokens
  2. 双击 SourceTree 中的存储库,单击弹出窗口右上角的 Setting 图标 window。
  3. 单击菜单选项卡中的 Remotes。你会看到这个仓库的远程URL,应该是这样的https://github.com/username/repo.git.
  4. 单击 Edit 并将其更改为 https://<your_token>@github.com/username/repo.git

完成。

第 1 步:生成令牌:https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

第 2 步:打开 .git > config 文件并像这样替换 [remote "origin"] URL

https://<username>:<githubtoken>@github.com/<username>/<repositoryname>.git

遇到同样的问题并以这种方式解决:

打开sourcetree,在右侧点击Settings(Repository settings)->Remotes -> Select Origin and Edit:

按以下格式设置URL/Path:https://@.git

在 MacOS 上遇到与 Sourcetree 相同的问题。

您也可以在 Sourcetree 中使用 Auth Type Basic 并使用 PAT 作为您的密码。

为了使其正常工作,我还必须从钥匙串中删除 GitHub 互联网密码(参见此处 https://howieyoung.medium.com/suffering-from-the-latest-403-error-from-github-on-sourcetree-e04a844efd35

从 2021 年 8 月 13 日开始,Github 在对 Git 操作进行身份验证时不再接受帐户密码,并且需要使用基于令牌的身份验证。

指南 Youtube 视频https://youtu.be/eZrOd5qM5WM 创建个人访问令牌的步骤http://mtahirmunir.com/github-support-for-password-authentication-was-removed/

首先,您需要通过 Github 帐户 -> 设置 创建个人访问令牌 - > <>开发者设置 -> 个人访问令牌 -> 生成新令牌。您指定令牌的名称、到期日期以及它可能具有的可能性。 单击“生成令牌” 后,确保保留将出现的代码,因为您将使用它作为登录代码来登录 Sourcetree使用 Github 帐户而不是您原来的 github 密码。

现在,您必须 re-enter 您的详细信息才能登录,使用您创建的令牌作为密码。为此,转到 C:\Users\{your_user_folder}\AppData\Local\Atlassian\SourceTree 并删除 passwd 文件,因此强制 Sourcetree 要求您提供 re-enter 凭据。
正常打开 SourceTree,当它要求您输入凭据时,作为密码输入上面提到的令牌。