Git clone / pull постоянно замораживается в " хранить ключ в кэше?"



Я пытаюсь клонировать РЕПО с моей учетной записи BitBucket на мой ноутбук Windows 10 (под управлением GitBash). Я выполнил все шаги, необходимые для подключения (настройка ssh-ключа, проверяется успешно SSHing [email protected] и т. д.). Однако всякий раз, когда я пытаюсь клонировать РЕПО, приглашение постоянно зависает после подтверждения того, что я хочу кэшировать ключ Bitbucket.



User@Laptop MINGW64 /C/Repos
$ git clone [email protected]:mygbid/test.git
Cloning into 'test'...
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 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, without
adding the key to the cache, enter "n".
If you do not trust this host, press Return to abandon the
connection.
Store key in cache? (y/n) y


файлы не клонируются, и результатом является пустое РЕПО. Попытка инициировать git pull origin мастер из этого РЕПО также просит кэшировать ключ, а затем зависает без обратной связи. Несмотря на то, что я не прошу кэшировать ключ при выполнении тестового SSH, операции git всегда запрашивают ключ каждый раз перед сбоем.



без сообщений об ошибках для работы, я действительно в недоумении относительно того, что не так. Я пробовал несколько РЕПО, в том числе и очень маленькие, без успеха.

759   5  

5 ответов:

У меня была эта проблема при клонировании РЕПО на Windows 10 тоже.

Я обошел его, используя графический интерфейс Putty для SSH на рассматриваемый сервер (в вашем случае: bitbucket.org) затем нажмите "Да", когда появится запрос, хотите ли вы сохранить ключ сервера в кэше. Запуск команды клонирования снова работал для меня!

  1. Откройте Putty
  2. введите имя хоста (например,bitbucket.org)
  3. Нажмите Кнопку Открыть
  4. Нажмите кнопку Да во всплывающем окне, чтобы кэшировать ключ хоста
  5. Закрыть Замазкой

для этого из powershell откройте окно powershell и вставьте следующее:

echo y | & 'C:\Program Files (x86)\GitExtensions\PuTTY\plink.exe' -ssh [email protected]
echo y | & 'C:\Program Files (x86)\GitExtensions\PuTTY\plink.exe' -ssh [email protected]
echo y | & 'C:\Program Files (x86)\GitExtensions\PuTTY\plink.exe' -ssh [email protected]

или с отдельной версией шпатлевки:

echo y | & 'C:\Program Files (x86)\PuTTY\plink.exe' -ssh [email protected]
echo y | & 'C:\Program Files (x86)\PuTTY\plink.exe' -ssh [email protected]
echo y | & 'C:\Program Files (x86)\PuTTY\plink.exe' -ssh [email protected]

также стоит знать, что замазка хранит известные хосты в разделе реестра:

HKEY_CURRENT_USER\SoftWare\SimonTatham\PuTTY\SshHostKeys

чтобы сократить выше, вы можете поместить следующее в .reg файл и запустите его:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\SimonTatham\PuTTY\SshHostKeys]
"rsa2@22:github.com"="0x23,0xab603b8511a67679bdb540db3bd2034b004ae936d06be3d760f08fcbaadb4eb4edc3b3c791c70aae9a74c95869e4774421c2abea92e554305f38b5fd414b3208e574c337e320936518462c7652c98b31e16e7da6523bd200742a6444d83fcd5e1732d03673c7b7811555487b55f0c4494f3829ece60f94255a95cb9af537d7fc8c7fe49ef318474ef2920992052265b0a06ea66d4a167fd9f3a48a1a4a307ec1eaaa5149a969a6ac5d56a5ef627e517d81fb644f5b745c4f478ecd082a9492f744aad326f76c8c4dc9100bc6ab79461d2657cb6f06dec92e6b64a6562ff0e32084ea06ce0ea9d35a583bfb00bad38c9d19703c549892e5aa78dc95e250514069"
"rsa2@22:gist.github.com"="0x23,0xab603b8511a67679bdb540db3bd2034b004ae936d06be3d760f08fcbaadb4eb4edc3b3c791c70aae9a74c95869e4774421c2abea92e554305f38b5fd414b3208e574c337e320936518462c7652c98b31e16e7da6523bd200742a6444d83fcd5e1732d03673c7b7811555487b55f0c4494f3829ece60f94255a95cb9af537d7fc8c7fe49ef318474ef2920992052265b0a06ea66d4a167fd9f3a48a1a4a307ec1eaaa5149a969a6ac5d56a5ef627e517d81fb644f5b745c4f478ecd082a9492f744aad326f76c8c4dc9100bc6ab79461d2657cb6f06dec92e6b64a6562ff0e32084ea06ce0ea9d35a583bfb00bad38c9d19703c549892e5aa78dc95e250514069"
"rsa2@22:bitbucket.org"="0x23,0xb9b88df3578371a7eb80c78bcda14fb30da436f11ca932a5fd5a8b6adfcc681df7a59cb4cb7ac966d9eac11daa38ebdbc0a6582a210ed4ee95a8d101c4abc925e942ab47535d64f9a5b3b68035c2ea1e900d709a1e8ea938718f532f9805a190446b92bac3040126225ae9d8374bc2008f106979d631734c7453f78c70091f4783b288869cb3c1941a784cd9baad823be27333833dc1f488a45b85952be75cf0a64965662302e3915378dcd5cfcd3ec903d804a29dff2fdf19df5deba4534b09e4dea6e44f152e339b3c43be98ddadfc56533192e216a3d673f00b4aa9cc9e7870acd8b6adb7e0feb77f2292fc2dede94819def3eb1e785541a06ab31ccf725f"

putty-hosts.Рег Гист

чтобы обойти эту проблему, я настроил GitBash для использования plink с . Опция отключает все подсказки - плинк завершится без подвешивания и не добавит никакого отпечатка ключа в кэш.

добавить -batch параметр для команды plink, выполняемой GitBash вы можете установить параметр конфигурации git:

git config --global core.sshCommand "plink -batch"

или set GIT_SSH_COMMAND переменные среды.

вывод при клонировании РЕПО с неизвестного хоста будет похож на это:

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 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40
Connection abandoned.
fatal: Could not read from remote repository.

после этого сообщения Вы можете добавить ключ в кэш с помощью команды:

echo y | plink [email protected]

Примечание: пожалуйста, проверьте, если плинк находится в вашем PATH. В качестве альтернативы используйте UNIX-подобный путь в опции конфигурации GitBash, например:

/c/Program\ Files/PuTTY/plink.exe -batch

Это звучит немного глупо, но после попытки все выше, я решил переустановить Git Bash с параметрами по умолчанию, и это сработало.

Comments

    Ничего не найдено.