创建个人访问令牌 (PAT)

时间:2021-06-16 18:54:26

标签: git github ssh https git-bash

到目前为止,我在使用 git bash 时使用密码进行身份验证,最近收到有关此类身份验证已弃用的通知,并指示我创建 PAT 进行身份验证。

我按照这个方法成功创建了一个 PAT。然后我使用凭证助手来存储我的新凭证 ($ git config --global credential.helper wincred)。

在进行上述所有操作之前,我还更新了 windows 的 git bash,所以现在我有了 2.32.0.windows.1 版本。

完成所有这些后,我无法再使用 HTTPS 克隆存储库。奇怪的是,我试图克隆的存储库实际上使用的是 HTTPS 远程 URL - 我检查了这个:

$ git remote -v
origin  https://github.com/***/****.git (fetch)
origin  https://github.com/***/****.git (push)

(我用星号隐藏个人信息)

另一个奇怪的事情是,当从终端(win 的 linux 终端)克隆 repo 时,它可以正常工作。

有没有人有任何解决方案或知道问题出在哪里?我没有太多经验,我尝试了我认为合理的方法。

非常感谢!

编辑:为了更清楚,在尝试将“git clone”与 HTTPS 一起使用时,我没有收到任何错误消息 - 该过程开始但似乎从未完成,它只是挂在那里而没有停止。

此外,'git clone' 对我来说适用于 SSH,但我想得到的答案是如何让它与 HTTPS 一起使用(就像以前一样)。

1 个答案:

答案 0 :(得分:0)

wincred 不再是您想要的 Windows(至少 10)和 https://docs.kraken.com/rest/#section/Authentication/Headers-and-Signature 上的 Git 凭证管理器助手。

git config --global credential.helper manager-core

那么:

  • 确保 C:\Program Files\Git\mingw64\libexec\git-core 在您的 %PATH% 中
  • 仔细检查 Windows 凭据管理器中存储的内容

即:

printf "host=github.com\nprotocol=https"|git-credential-manager get

如果您看到错误的密码,请使用

删除它
printf "host=github.com\nprotocol=https"|git-credential-manager erase

重复擦除命令,直到您看到一个弹出窗口(不要输入您的凭据)

然后执行 git ls-remote https://github.com/***/****.git,并输入您的凭据以存储它们。