git clone输入密码提示 Permission denied, please try again.

1. 当前环境

windows + git

2. 问题描述

git clone输入密码提示 Permission denied, please try again.
我输入的密码可以登录github

3. 期待的结果

我希望不要让我输入密码可以直接拉取或提交

4. 我实际得到的结果

git clone输入密码提示 Permission denied, please try again.

5. 我尝试过如下操作

  1. 按照社区的laravel 课程一中的github操作走一遍,依旧出现如题的错误
    git clone输入密码提示 Permission denied, please try again.

  2. 重新生成公钥和密钥,然后再git clone,还是出现了如提的错误

  3. 在项目目录下执行 git init && git clone git@github.com:SinMu-L/testGitClone.git 依旧是如提的错误。

  4. 我用管理员启动 git bash 重新 运行git clone 依旧是如提的错误

  5. 按照错误提示进行百度搜索,找到了这个 docs.github.com/cn/authentication/... 说是可以用ssh -vT git@github.com 检查是否连接到了正确的服务器,结果还是要我输入密码(我输入的密码我是可以从另一个浏览器登录github的)

git clone输入密码提示 Permission denied, please try again.

ps: 国庆之前还是好的来着

最佳答案

我似乎解决了这个问题。

或许是官方文档上面说的“有时候,防火墙拒绝了ssh的连接”

通过 HTTPS 端口使用 SSH,端口修改为 443。官方文档是这么说明的

如果您能够git@ssh.github.com通过端口 443 进行 SSH 连接,则可以覆盖您的 SSH 设置以强制任何与 GitHub.com 的连接通过该服务器和端口运行。

我的操作步骤如下,

  1. 按照@hustnzj 老师说的检查一下,验证公钥是否在我的github账户

  2. 按照上述的三个步骤走完之后,尝试 检查我是否连接了正确的服务

  3. 这里我看到了这么一句话 “The connection should be made on port 22, unless you’re overriding settings to use SSH over HTTPS.”。我就点进去看了一下
    file

  4. 按照他的步骤测试了一下
    file
    file

  1. 然后按照文档上面的步骤创建一个 config 文件后,重新git clone 就没有再让输入密码了

file

2个月前 评论
hustnzj 2个月前
讨论数量: 21

我这里可以:

image-20221003162138927

你点击用户头像下拉菜单中的 Settings

image-20221003162407489

尝试下添加 SSH keys,如下:

image-20221003162333493

2个月前 评论
sinmu (楼主) 2个月前
hustnzj (作者) 2个月前
sinmu (楼主) 2个月前
sinmu (楼主) 2个月前

看着咋像是三次密码都错了

2个月前 评论
sinmu (楼主) 2个月前
已下线 (作者) 2个月前
sinmu (楼主) 2个月前

git的clone印象中自己不能用密码下载了

2个月前 评论

@hustnzj ssh -vT git@github.com 完整的操作截图如下

从你的截图可以看出,你没有合适的 key 给 SSH 使用。在 “identity file” 行的末尾的 “-1” 都表示 SSH 不能找到该文件。”Trying private key” 行也是一个意思。你使用的 ssh key 类型是 rsa, 如果有的话,”identity file” 行的末尾应该是1。最后结果里应该有”debug1: Authentication succeeded (publickey).”

建议你进行如下操作验证公钥是否已添加到你的GitHub账户

“请问一下这里的密码是我的github登录密码么? 不是” 这个输入的密码应该是什么密码嘞

你用来测试连接的 ssh -vT git@github.com 这个命令,连接的用户不是你,而是 git,你当然不可能知道这个密码。不要想用密码登录了,从2021年起,就已经不能了。

2个月前 评论
sinmu (楼主) 2个月前
hustnzj (作者) 2个月前
sinmu (楼主) 2个月前

我似乎解决了这个问题。

或许是官方文档上面说的“有时候,防火墙拒绝了ssh的连接”

通过 HTTPS 端口使用 SSH,端口修改为 443。官方文档是这么说明的

如果您能够git@ssh.github.com通过端口 443 进行 SSH 连接,则可以覆盖您的 SSH 设置以强制任何与 GitHub.com 的连接通过该服务器和端口运行。

我的操作步骤如下,

  1. 按照@hustnzj 老师说的检查一下,验证公钥是否在我的github账户

  2. 按照上述的三个步骤走完之后,尝试 检查我是否连接了正确的服务

  3. 这里我看到了这么一句话 “The connection should be made on port 22, unless you’re overriding settings to use SSH over HTTPS.”。我就点进去看了一下
    file

  4. 按照他的步骤测试了一下
    file
    file

  1. 然后按照文档上面的步骤创建一个 config 文件后,重新git clone 就没有再让输入密码了

file

2个月前 评论
hustnzj 2个月前

我似乎解决了这个问题。我的操作步骤

这里是修改了ssh的配置文件,

Host github.com
Hostname ssh.github.com
Port 443
User git

Hostname 指的是实际登录的主机名。这个配置的作用就是将对于 github.com 的所有访问全部通过 ssh.github.com 这台服务器和 443端口来完成。

2个月前 评论
sinmu (楼主) 2个月前
hustnzj (作者) 2个月前

那我就可以得到这个结论:我出现这个问题的原因是我自己的网络问题 是么 :joy:

2个月前 评论
hustnzj 2个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!