【问题标题】:TortoiseGit asks for and rejects password only on clone, but clone from command line worksTortoiseGit 仅在克隆时要求并拒绝密码,但从命令行克隆有效
【发布时间】:2017-12-19 19:05:17
【问题描述】:

我在 Windows 7 Enterprise 上使用 TortoiseGit 2.4.0.2。我几个月前安装了它,一切正常。它存储了我的 HTTP 凭据(Git -> 凭据 -> 管理器 - 所有 Windows 用户),因此我不必每次与它交互时都重新输入密码。

今天,为了帮助一些人开始使用 git,我尝试将我一直在使用的存储库克隆到一个新的地方(即创建一个新的沙箱来进行教学)。我从 BitBucket 获得了 HTTP URL,并通过 GUI 使用了 Clone(右键单击“Git Clone ...”),指定了一个新目录。它要求我输入密码,我知道该密码是正确的,但在 GUI 中失败并显示“致命:身份验证失败”。操作日志中没有更多内容:

2017 年 7 月 18 日 - 上午 10:21:37 - C:\doc-git\test\doc-test
git.exe pull --progress -v --no-rebase "origin"

致命:“http://mcellio@git.example.com/scm/docs/doc-test.git/”的身份验证失败

git 没有完全退出(退出代码 1)(32542 ms @ 7/18/2017 10:21:29 AM)
用户已取消

(“用户取消”在 GUI 出现错误后发生;我选择“取消”和“中止”,我选择了后者。以前我尝试过“取消”,但它留下了一个正在运行的进程,后来干扰了行动。)

然后我前往一个新目录中的 Cygwin 命令行,并使用相同的 URL(git 版本 2.7.0)进行了 git clone。它提示我输入密码,接受它,然后克隆存储库。但是,如果我尝试使用 TortoiseGit 与该克隆进行交互,我会再次遇到密码问题。

我注意到 Bitbucket HTTP URL 包含用户名 (https://username@git.example.com...),因此严格来说客户端不需要请求它。命令行 git 没有,但 TortoiseGit 可以。所以我尝试省略用户名,但也没有用。

如何使用 TortoiseGit 解决问题? 我可以只使用命令行,但我正准备教一些依赖 GUI 的人如何与这个存储库交互,我想验证他们是否能够克隆它.我使用 TortoiseGit 多次(在不同位置)克隆这个存储库这一事实是否重要?我不认为 git 会在意;过去我在不同的机器上克隆了同一个 repo(不是这个),但以前从未从同一个客户端克隆过两次。

有人告诉我,从 HTTP 切换到 SSH 不是我们的选择。此外,我正试图让这个对人们来说变得非常简单(除了它是 git :-)),并且密钥管理增加了复杂性。

【问题讨论】:

  • 您可以尝试其他 GUI。 tortoisegit使用的是libgit2,是git重新实现的,可能有关系。
  • @max630 我要迁移到 git 的人目前使用 Tortoise SVN,因此强烈倾向于使用 Tortoise Git 来简化他们的过渡。
  • “致命:身份验证失败”还不够。你能去 TotoiseGit -> Settings -> Saved data -> Action log -> 按“显示”按钮,然后在此处复制/粘贴更多错误消息吗?
  • 你使用 Cygwin git 还是 Windows 版 Git?哪个版本的 git?
  • @YueLinHo 日志中没有更多内容,但我已经对其进行了编辑。(感谢您指点我;不知道日志。)我将 git 版本号添加为从 Cygwin 命令行获取。

标签: git tortoisegit


【解决方案1】:

我注意到 Bitbucket HTTP URL 包含用户名 (https://username@git.example.com...),因此严格来说客户端不需要询问它。命令行 git 不会,但 TortoiseGit 会。

是啊~不应该问名字...

试试看是否有帮助(先删除凭证,然后再克隆):

  1. Windows 开始 -> 键入“cred” -> 点击 Manage Your Credentials

  2. 从管理器中删除 BitBucket 凭据

  3. 克隆(使用带有用户名的 URL)

  4. 应该弹出 BitBucket 询问密码对话框

【讨论】:

  • 嗯,奇怪——凭证管理器没有 BitBucket 的条目。 (实际上,它所拥有的一切都是一些 Microsoft 应用程序。)我想知道该凭据真正存储在哪里。
猜你喜欢
  • 1970-01-01
  • 2014-07-30
  • 2020-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-28
  • 1970-01-01
相关资源
最近更新 更多