Ключ хоста git server не кэшируется в реестре - GitHub.com
продолжение выпуска здесь:
Я пытаюсь настроить свой первый репозиторий Git на GitHub. (Обратите внимание, это означает, что я не могу использовать шпатлевку, я использую openssh, или, по крайней мере, я должен, и я думаю, что я). Я следил за документацией на веб-сайте GitHub здесь. Я получаю все правильно до самой последней команды:git push -u origin master
. Это дает мне следующую ошибку:
The server's host key is not cached in the registry.
You have no guarantee that the server is the computer you think it is.
The server's rsa2 key fingerprint is: ssh-rsa 2048
16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48
Connection abandoned. fatal: The remote end hung up unexpectedly
Я предполагаю, что это означает, что в моем их ключ ssh-rsa не найден, но я не уверен, как это исправить. Я пытался ssh -T git@github.com
и я вхожу в систему просто отлично. Я также попытался закрыть Git bash и снова открыть, если это проблема с кэшем. Это не решает проблему. Это единственный результат, который я получаю, который отличается от того, что указывает документация. Я надеюсь поставить сладкую вспомогательную библиотеку Java, поэтому любая помощь будет очень признательна!
4 ответов
идеальным решением было бы (если вам действительно не нужно использовать plink в git) удаление переменной среды GIT_SSH и создание новой пары клавиш с помощью команды ssh-keygen -t rsa -C "youremail"
на Git Bash затем измените свой ssh-ключ в github, потому что из того, что я понял из комментариев, замазка и openssh конфликтуют.
однако, если вы все еще хотите использовать plink, вы можете использовать PuTTYgen для создания ключа формата PuTTY, затем измените свой открытый ключ в github и загрузите свой закрытый ключ в PuTTYagent тогда вы должны сделать соединение с github.com с замазкой это добавит отпечаток пальца githubs к known_hosts, и вам хорошо идти. Это будет ресурс для github с PuTTY http://nathanj.github.com/gitguide/tour.html
использование git-for-windows с git_ssh, указывающим на plink.exe, открытие замазки на сервер и принятие ключа хоста (а затем убийство сеанса замазки, даже не продолжая входить в систему) было достаточно, чтобы решить эту проблему для меня.
в Windows кажется, что иногда вы не можете фактически принять ключ хоста сервера.
попробуйте одну из следующих команд из Power Shell:
ssh github.com
или
plink.exe -agent github.com
запустите эти автономные и нажмите y
при запросе принять ключ хоста.
использовать ssh-add
чтобы добавить свой закрытый ключ к текущему сеансу Power Shell:
C:> ssh-add PATH\TO\PRIVATE\KEY
после этого вы сможете успешно запустить git push
.
источник:http://help.github.com/ssh-issues/
добавление информации в сообщение @Name (для полноты), так как у меня только что был (снова) этот вопрос сегодня.
Putty хранит свои известные хосты SSH В разделе реестра, а не в ~/.СШ/если вы файл, как СШ. Поэтому, чтобы Git работал с PLink и Pagent, вам просто нужно запустить сеанс шпатлевки на удаленном сервере Git и принять ключ. Таким образом, вы не получите сообщение снова.
это беспокоит, так как вы должны принять ключ SSH дважды : один для SSH-ing сервера, один для Putty / Plink / Pagent, но как только вы это сделаете, он работает как шарм.