Tortoise Git 不使用 id_rsa

Tortoise Git 不使用 id_rsa

我在 Windows 10 上使用 Tortoise Git。当我推送时,它会询问我密码,尽管我确实有%userprofile%\.ssh\id_rsa文件。我也尝试从命令行(Git bash)使用 git。如果我使用谷歌搜索,我会被指示写入IdentityFile%userprofile%\.ssh\config我已经在那里有它,但它仍然不起作用。我打开了 Sysinternals 的 Process Monitor 并记录了 git.exe 文件系统活动,我发现它甚至没有尝试访问.ssh目录中的任何内容。我怎样才能让 git 使用这个 id_rsa 文件?

答案1

我终于找到解决办法了!

问题是我使用的是 https 身份验证而不是 ssh 身份验证。这就是为什么它从未尝试访问密钥文件的原因。

解决办法是改为ssh认证:

$ git remote set-url origin [email protected]:something/something.git

为了验证现在是否是 ssh 身份验证,我使用了git remote -v

$ git remote -v
origin  [email protected]:something/something.git (fetch)
origin  [email protected]:something/something.git (push)

现在钥匙终于能用了。

PS:最后要记住的一点是,ppk 密钥不适用于 Windows 上的 git bash。我在验证它是否访问正确的密钥时学到了这一点(或者,如果您当前在 git 目录中,也可以使用)。此命令以以下内容结尾:。为了解决这个问题,我必须将密钥转换为 open-ssh 格式。为此,我使用了 puttygen GUI,但对于那些想要更多解释或命令行的人来说,这里是解释:ssh -v -T [email protected]GIT_SSH_COMMAND="ssh -v" git pullerror in libcryptohttps://www.baeldung.com/linux/ssh-key-types-convert-ppk

我希望这个回复对某些人有用。

相关内容