Настройка git для работы через ssh
· 2 мин. чтения
Вкратце: генерируем ключ, добавляем его на гитхаб, заставляем репозиторий использовать ключ вместо логин-токен
Зачем? Чтобы не приходилось постоянно вводить логин-токен или хранить его в открытом виде в .git-credentials (безопасность + простота)
Генерируем ключ на машине, которая будет выполнять git команды
$ ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/github
Говорим хосту использовать наш ключ
Это нужно, чтобы не теребить ssh-agent и ssh-add. Так хост будет автоматически понимать какой ключ использовать.
Создаем или редактируем ~/.ssh/config
. Прописываем следующее:
Host github.com
HostName github.com
IdentityFile ~/.ssh/github
Если ~/.ssh/config
не существовал, то может потребоваться ввести chmod 600 ~/.ssh/config
.
Сообщаем о нашем ключе GitHub'у
- Смотрим сам ключ:
cat ~/.ssh/github.pub
, копируем его в буфер обмена - Открываем https://github.com/settings/keys, добавляем туда скопированный ключ. Название не важно