Хах! ProcMon на помощь. Это ошибка в tortoisegit / tortoiseplink. Он должен отдавать предпочтение ключу, установленному для этого пульта через конкурс, но вместо этого он отдает предпочтение ключу, хранящемуся в реестре, замазкой для этого конкретного сервера. Два исправления.
2 возможных исправления здесь
Ваша tortoiseplink интегрирована с замазкой, и она читает закрытый ключ, который вы сохранили в "Сессии" замазки, связанной с этим сервером. По крайней мере, так было у меня. Я не на GitHub, поэтому я не знаю жизнеспособность этого решения для всех.
Я бы порекомендовал удалить набор ключей вручную в конфигурации сеанса замазки и использовать pagaent для ваших сеансов замазки, как это делает git черепахи. Это также заставляет черепаху использовать ключ, установленный для пульта.
Таким образом, вы можете открыть putty, загрузить любой сеанс, который вы связали с сервером, перейти в Connection / SSH / Auth и изменить / удалить значение «Файл закрытого ключа для аутентификации». Модификация может исправить это хранилище, но затем испортить другое хранилище, если вы используете разные ключи для одного и того же сервера.
Вы можете изменить / удалить запись реестра самостоятельно.
это HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\$SERVERNAME$\PublicKeyFile