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


当前回答

从2021-08-13开始,GitHub在验证Git操作时不再接受帐户密码。您需要添加一个PAT(个人访问令牌),您可以按照下面的方法在您的系统上添加一个PAT。

在GitHub上创建个人访问令牌 从你的GitHub账户,点击设置→开发者设置→个人访问令牌→生成新的令牌(给出你的密码)→填写表格→点击生成令牌→复制生成的令牌,它将是ghp_sFhFsSHhTzMDreGRLjmks4Tzuzgthdvfsrta

现在根据您的机器执行以下方法:

Windows操作系统⤴ 从控制面板转到凭据管理器→Windows凭据→找到git:https://github.com→编辑→打开密码替换为您的GitHub个人访问令牌→完成 如果你没有找到git:https://github.com→点击添加一个通用凭证→互联网地址将是git:https://github.com,你需要输入你的用户名和密码将是你的GitHub个人访问令牌→点击确定,你就完成了


macOS版本⤴ 点击菜单栏右侧的Spotlight图标(放大镜)。输入钥匙链访问,然后按Enter键启动应用程序→在钥匙链访问,搜索github.com→找到github.com的互联网密码条目→编辑或删除相应的条目→你就完成了


linux操作系统⤴ 对于Linux,需要使用用户名配置本地GIT客户端 电子邮件地址, $ git配置——全局用户名“your_github_username” $ git配置——全局用户。电子邮件“your_github_email” $ git config -l 一旦配置了GIT,我们就可以开始使用它来访问GitHub。 例子: $ git克隆https://github.com/YOUR-USERNAME/YOUR-REPOSITORY 克隆到' YOUR-REPOSITORY '… 用户名:<输入您的用户名> 密码:<输入您的密码或个人访问令牌(GitHub) 现在在你的计算机中缓存给定的记录来记住令牌: $ git配置——全局凭证。辅助缓存 如果需要,你可以随时删除缓存记录: $ git config——global——unset credentials .helper $ git config——system——unset credential.helper 现在试着用-v来验证 $ git拉-v

Linux / Debian (克隆如下): Git克隆https://<tokenhere>@github.com/<user>/<repo>.git


对于PhpStorm 如果您正在使用PhpStorm,请进入菜单Git→拉并选择通过个人访问令牌进行身份验证。输入您的PAT,它将允许您拉/推更改。

其他回答

使用SSH(忘记https)(例如,不要使用https url进行克隆) 使用个人访问令牌(PAT)(忘记用户名/密码)

(例如,设置>开发人员设置>个人访问令牌)

更新git到最新版本(例如2.35.1)//我认为这很重要 在Github中,取消勾选设置>开发人员设置>保持我的电子邮件地址私密性

结论:您在Github中添加了个人访问令牌。然后从任何IDE(例如,Android Studio, IntelliJ IDEA等),您可以使用ssh添加远程(例如,名称:origin, URL: git@github.com:your_github_username/your_git_repo.git)。就是这样

如果还没有,

配置git全局用户名和邮箱 Git配置——global user.name "your_username" && Git配置——全局用户。电子邮件“your_email”

如果在windows,您可以为您的用户添加windows凭据,控制面板>用户>管理您的凭据> windows凭据>添加通用凭据>

互联网地址将是git:https://github.com,你需要输入 在你的用户名和密码将是你的GitHub个人访问 Token =>单击Ok,就完成了

在这之后,我能够使用git(获取/推/拉等)

我是一个Sourcetree用户,并通过“刷新OAuth令牌”在菜单工具→选项→身份验证→选择GitHub帐户来修复它。

如果你从未为你的GitHub帐户添加身份验证,你可以参考如何连接GitHub与SourceTree(方法1:通过OAuth连接远程帐户)。

昨天,我试图在我的MacBook的钥匙链上找到GitHub时遇到了一些问题。我试过很多方法都没有成功。

从我的角度来看,我曾经能够从我的GitHub帐户快速拉和推的解决方案是通过SSH完成的。

这允许我不需要进一步配置就可以完成。

你可以通过SSH密钥来实现 然后新建SSH密钥 如果您已经在本地创建了SSH,只需运行pbcopy < ~/. SSH /id_rsa。在终端机上的酒吧 然后拉,推,克隆或任何你需要从你的GitHub存储库,它就完成了

我知道这不是问题的解决方案,但它为我工作,因为我需要做的很快,对我来说,老实说,没有任何理由,我需要使用HTTPS而不是SSH。

对于使用Mac或Linux的用户,请通过Homebrew安装GH:

brew install gh

如果你已经安装并运行了gh auth login,仍然有这个问题,解决它的最简单的方法就是运行:

gh auth setup-git

Mac用户——一个简单的解决方案。

在GitHub中设置个人访问令牌:

设置→开发者设置→个人访问令牌

打开钥匙串→输入“GitHub”

将密码更改为个人访问令牌。

尝试提交/推动。

选择“始终允许”,业务照常进行。