【问题标题】:Permission Denied (publickey) - Git Bash on Windows [duplicate]权限被拒绝(公钥)-Windows 上的 Git Bash [重复]
【发布时间】:2017-08-02 02:13:43
【问题描述】:

我正在我的 Windows 10 PC 上设置 Git Bash,目的是在 Gitlab 中使用它。尽管设置正确,但 git clone 或 git push 总是导致 Permission denied (publickey)。

在你说之前,我已经广泛研究了类似问题的所有答案,最重要的是,我在这类事情上相当有经验。

所以,是的,我已经生成了全新的 SSH 密钥对,以 id_rsa 和 id_rsa.pub 的形式愉快地坐在 ~/.ssh/ 中。公钥注册到我在Gitlab中的账号,是repository的master,repository存在并且已经初始化。

除此之外,我已经完成了 Gitlab 文档所说的操作,并使用

测试了我的设置

ssh -T git@gitlab.com

并得到预期的“欢迎来到 GitLab,[Given Name]!”消息,表示 SSH 密钥正在工作(否则,您会看到权限被拒绝的公钥消息)。

无论如何,任何与实际服务器交互的尝试都会导致:

权限被拒绝(公钥)。

致命:无法从远程存储库读取。

有没有人遇到过同样的问题,或者有其他尝试的想法?大多数人的问题似乎通常可以通过新的密钥对或类似的简单方法来解决。

提前致谢!

【问题讨论】:

  • 您的用户名是否已添加到项目的成员组中?
  • 是的!用户是项目的主人。

标签: windows git bash ssh gitlab


【解决方案1】:

确保您没有引用 putty 的环境变量 GIT_SSH。

并且,要调试,请在您的 bash 会话中设置:

export GIT_SSH_COMMAND='ssh -Tv'

这样,在git clone 期间使用 ssh 时,您将准确看到 Git 尝试访问的内容。

【讨论】:

  • 感谢有关调试语句的提示。它仍然没有给我太多 - 它使用 OpenSSH 和 OpenSSL,仍然只是给我这个:
  • debug1:可以继续的身份验证:publickey debug1:下一个身份验证方法:publickey debug1:提供 RSA 公钥:/c/Users/username/.ssh/id_rsa debug1:可以继续的身份验证:publickey debug1 :尝试私钥:/c/Users/username/.ssh/id_dsa debug1:尝试私钥:/c/Users/username/.ssh/id_ecdsa debug1:尝试私钥:/c/Users/username/.ssh/id_ed25519 debug1:没有更多的身份验证方法可以尝试。权限被拒绝(公钥)。不过,这让我想到要确保我的 ssh_config 设置正确。对格式感到抱歉!
  • 您找到解决方案了吗?我有同样的问题。我用许多不同的方式设置了公钥。
  • @ThadeuAntonioFerreiraMelo ssh -T git@gitlab.com 有效吗?你有 %USERPROFILE%\.ssh\config 文件吗?
  • @VonC 我刚刚发现我的钥匙出了什么问题。我在给他们起名字。当 ssh-keygen 提示输入名称时,您只需按 Enter。我还需要在 .ssh 目录中。谢谢
猜你喜欢
  • 2014-03-18
  • 1970-01-01
  • 2018-09-19
  • 1970-01-01
  • 2020-01-04
  • 2013-11-08
  • 1970-01-01
  • 2019-03-21
相关资源
最近更新 更多