Git 不使用 SSH 密钥 (Windows)

Git does not use SSH key (Windows)

我为我的 GitLab 存储库创建了一个 SSH 密钥,当我使用 SSH 对其进行测试时,它确实有效并要求输入密码:

>ssh -T git@gitlab.lrz.de
Enter passphrase for key 'C:\Users\[username]/.ssh/id_ed25519':
Welcome to GitLab, @000[...]!

我也用过

>git remote set-url origin git@gitlab.lrz.de:000[...]/project.git

没有错误。但是,当我尝试提交并推送到存储库时,Git 要求输入 git@gitlab.lrz.de 的密码,而不是 SSH 密钥的密码。

根据文档 (https://docs.gitlab.com/ee/ssh/),您可以在配置文件 ~/.ssh/config 中设置 ssh 密钥。所以我在这个目录中创建了一个文本文件,内容如下:

Host gitlab.lrz.de
 HostName gitlab.lrz.de
 IdentityFile ~/.ssh/id_ed25519

它仍然不起作用,我不确定它是否使用了这个配置文件。我能够在 Linux 服务器上获得所有内容 运行,但不能在这台 Windows 计算机上获得。我通过命令行和 Pycharm.

进行了尝试
>git --version
git version 2.35.1.windows.1 

您可以在 git 配置中自定义 git 使用的 ssh 命令,然后在使用任何 git 命令时传递您的密钥。

git config core.sshCommand "ssh -i ~/.ssh/id_ed25519"

在 PyCharm 尝试导航到 VCS -> Git -> Remotes 并确保那里配置的 URL 与 SSH URL 对齐(你可以看到 ssh URL 当通过浏览器导航到 repo 并单击克隆按钮时)