【问题标题】:git clone doesn't work with HTTPS after creating Personal Access Token (PAT)创建个人访问令牌 (PAT) 后,git clone 无法与 HTTPS 一起使用
【发布时间】:2021-09-01 14:51:46
【问题描述】:

到目前为止,我在使用 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(就像以前一样)。

【问题讨论】:

  • 您能否编辑问题以将您收到的确切错误消息显示为文本块?另外,当您输入您的凭据时,您是否输入了您的用户名作为用户名并输入了您的 PAT 作为密码?
  • 所以我没有收到错误消息,但是使用 HTTPS 的 git clone 只是挂起并且似乎永远运行。自从我生成令牌以来,我实际上从未被 git bash 要求输入我的凭据。
  • 您可能希望以GIT_TRACE=1 GIT_CURL_VERBOSE=1 git clone https://... 的身份运行克隆以了解更多信息。这应该可以告诉您问题是凭证助手挂起、HTTP 问题还是其他问题。
  • @bk2204 好的,我只是这样做了,但由于我缺乏经验,我不确定我是否理解输出告诉我的内容。我能不能发给你(很长)?
  • Git 版本 2.32.0.windows.1 似乎在这里解决了某种 Windows 错误。许多人报告了同样的问题。降级到 Git 2.30 可以解决这个问题。

标签: git github ssh https git-bash


【解决方案1】:

wincred 不再是您想要的 Windows(至少 10 个)和 Git for Windows 2.32+ 上的 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,并输入您的凭据以存储它们。

【讨论】:

    猜你喜欢
    • 2022-01-21
    • 2022-01-10
    • 1970-01-01
    • 2019-08-24
    • 2020-01-04
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多