git ssh с Powershell не может найти IdentityFile в ssh-agent
Это сводит меня с ума.
Вот что ssh-agent
знает:
> ssh-add -l
2048 SHA256:JHUL/QtZf4e6rle0yRVEy7jVThtdNJ0SH+Wy1kf5th8 C:\Users\tig\.ssh\foocorp_rsa (RSA)
2048 SHA256:JPyqmrvgX/abfXDzrrf1p2c1wgPn19uj7xthJeCzOSs \users\tig\.ssh\id_rsa (RSA)
мой /.ssh/config
:
Host gitlab.foocorp.com
HostName gitlab.foocorp.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/foocorp_rsa
я сделал ssh-add
и ввел мой пароль.
Если я сделаю следующее, меня не попросят foocorp_rsa
Ключевая фраза:
> ssh -v gitlab.foocorp.com
OpenSSH_for_Windows_7.6p1, LibreSSL 2.6.4
debug1: Reading configuration data C:\\Users\\tig/.ssh/config
...
debug1: Offering public key: RSA SHA256:JHUL/QtZf4e6rle0yRVEy7jVThtdNJ0SH+Wy1kf5th8 C:\\Users\\tig/.ssh/foocorp_rsa
...
Welcome to GitLab, Tig!
Обратите внимание на синтаксис пути: C:\\Users\\tig/.ssh/foocorp_rsa
У меня есть опции git debug, чтобы я мог видеть, что он делает ($env:GIT_SSH_COMMAND="ssh -v"
).
> git pull
...
OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
debug1: Reading configuration data /c/Users/tig/.ssh/config
debug1: /c/Users/tig/.ssh/config line 49: Applying options for gitlab.foocorp.com
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to gitlab.foocorp.com [10.11.11.67] port 22.
debug1: Connection established.
...
debug1: Host 'gitlab.foocorp.com' is known and matches the ECDSA host key.
debug1: Found key in /c/Users/tig/.ssh/known_hosts:18
...
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering public key: RSA SHA256:JHUL/QtZf4e6rle0yRVEy7jVThtdNJ0SH+Wy1kf5th8 /c/Users/tig/.ssh/foocorp_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 279
Enter passphrase for key '/c/Users/tig/.ssh/foocorp_rsa':
Это не должно спрашивать меня о парольной фразе, но это так!
Все, что я могу сказать, это то, что ssh-agent
не может найти путь к файлу идентификации Это хранение C:\Users\tig\.ssh\foocorp_rsa
но передается git / ssh /c/Users/tig/.ssh/foocorp_rsa
и не соответствует им.
Или я совершенно не понимаю, как это работает.
Я не знаю, связано ли это с Powershell и Windows или чем-то еще. У меня никогда не было этой проблемы раньше.
Есть идеи или предложения?