Я использую msysgit на Windows 7, а также пакет PuTTY .
Я открыл Puttygen и нажал кнопку «Создать». Я переместил свой курсор вокруг, чтобы «генерировать некоторую случайность». После того, как ключ был создан, я ввел ключевую фразу для ключа и нажал «Сохранить закрытый ключ». Я сохранил файл как "private.ppk" в каталоге c:/Users/Kristen/.ssh.
Затем я нажал «сохранить открытый ключ» и сохранил файл как «public.pub» внутри c:/Users/Kristen/.ssh.
Затем я скопировал содержимое поля с надписью «Открытый ключ для вставки в файл авторизованных ключей OpenSSH». Я не копировал содержимое public.pubфайла, потому что я знаю, что есть дополнительные данные, которые сломают ключ.
Я зашел в свою учетную запись GitHub, зашел в «Настройки»> «Ключи SSH» и нажал кнопку «Добавить ключ SSH». Я дал ключу название, затем вставил ключ, скопированный из Puttygen, и нажал «Добавить ключ». Ключ был успешно сохранен.
Я открыл Pageant и нажал «Добавить ключ». Я выбрал файл "public.ppk" из c:/Users/Kristen/.ssh. Я ввел ключевую фразу.
Я открыл Git Bash и набрал ssh git@github.com. Он спросил меня, хочу ли я добавить github.com в список известных хостов. Я напечатал yes. Тогда я получил эту ошибку:
В доступе отказано (publickey).
Затем я набрал ssh -v git@github.comи получил этот вывод:

Я увидел, что он искал id_rsa, поэтому я создал каталог с именем id_rsaи поместил в него свои ключи.
Затем я набрал еще ssh git@github.comраз, и получил это сообщение:
Введите пароль для ключа
c:/Users/Kristen/.ssh/id_rsa:
Я ввел ключевую фразу для своего закрытого ключа, но он продолжал спрашивать снова и снова.
Затем я удалил эту папку и изменил имя моего закрытого ключа на id_rsa.ppk, но получил то же самое сообщение «Permission denied (publickey)».
Я зашел в Панель управления> Система> Свойства системы> Дополнительно> Переменные среды, и моя GIT_SSHпеременная была установлена в значение c:\Program Files (x86)\PuTTY\plink.exe, и я подтвердил, что Plink действительно живет в этой папке.
Не уверен, что еще попробовать. Предложения?

id_rsaкак не имел расширения, это был каталог. В любом случае, я подтвердил, что путь к Plink в моейGIT_SSHпеременной правильный, и я обновил свой вопрос, чтобы включить его.