个人访问令牌无法在 Linux 上运行

Personal Access Token not working on Linux

我在 Linux 上使用 Git。 我按照 this 创建了一个个人访问令牌,但忘记保存了。 因此,当我再次被要求输入“密码”时,我删除了旧的 PAT 并创建了一个新的 PAT。出于某种原因,新令牌被拒绝,我得到

fatal: Authentication failed for 'https://github.com/username/***.git/'

当我查看 github 上的令牌页面时,这个令牌说它从未被使用过。这可能是什么问题?

问题可能与您当前的凭据助手有关。

键入 git config credential.helper 以查看使用的是哪一个。

类型:

printf "protocol=https\nhost=github.com"|git-credential-xxx erase

(将 xxx 替换为第一个命令输出中的凭据帮助程序名称)

这将清除 https://github.com 的缓存凭据。

然后再试一次 git push,看看它是否要求您提供凭据:输入新的 PAT 作为密码。

如果您没有凭证助手,我建议安装 microsoft/Git-Credential-Manager-Core (there is a Linux package)。
Add a credential store,大功告成。


discussion之后:

  • 没有凭证助手
  • 这是个人账号(不是技术服务账号,多人使用)
  • 问题在于粘贴令牌

因此我会使用商店凭据缓存:

git config --global credential.helper 'store --file /home/<user>/.my-credentials

然后:

git ls-remote https://github.com/<user>/<repo>

这将触发输入用户名和令牌的提示。

编辑 /home/<user>/.my-credentials 并确保其中包含正确的标记。


或者,

git config --global credential.helper 'store --file /home/<user>/.my-credentials'

然后:

git ls-remote https://<user>:<token>@github.com/<user>/<repo>

有效。

我不得不删除我的令牌并创建一个新的,它对我有用