Софт

Как настроить SSH-ключ для GitHub

GitHub является одним из крупнейших веб-сервисов для хостинга и совместной разработки IT-проектов. Сервис предоставляет возможность бесплатного использования для проектов с открытым исходным кодом и небольших частных проектов, включая SSL. Крупным корпоративным проектам доступны различные платные тарифные планы. В данной статье мы рассмотрим настройку SSH-ключа для GitHub, которая позволит работать с сервисом более удобно.

Для создания ключа нужно выполнить команду в терминале:

ssh-keygen -t rsa -b 4096 -C <e-mail>

Ввести путь хранения ключей (оставить стандартное id_rsa, с измененным почему-то не работает) и задать пароль для ключа 2 раза (этого можно не делать). После этого сгенерируются публичный и приватный ключи.
Посмотреть содержимое публичного ключа:

cat <путь_к_файлу_публичного_ключа,_показывается_при генерации_на_предыдущем_этапе>.pub

Открыть GitHub, Settings -> SSH and GPG keys -> New SSH key, ввести название и содержимое публичного (не приватного!!!) ключа и сохранить.
Для клонирования репозитория с помощью SSH-ключа нужно залогиниться на GitHub, зайти на страницу репозитория, нажать на зеленую кнопку Code, выбрать ниже подпункт SSH и скопировать адрес репозитория, начинающейся на "git@github.com:". После этого в терминале выполнить:

git clone git@github.com:<адрес_репозитория>

Тогда репозиторий будет клонироваться с помощью ключа.
Если же ввести адрес в подпункте HTTPS:

git clone https://github.com/<адрес_репозитория>

то репозиторий будет клонироваться без помощи ключа, и при отправке pull-request в основной репозиторий GitHub выдаст ошибку. Поэтому проверяйте внимательно каждую команду перед вводом.