Настраиваем подключение к GitHub по SSH в Linux

В наше время каждый разработчик должен уметь пользоваться такими сервисами как GitHub или GitLab. И в одной из прошлых статей, мы разбирали как поднять свой сервер с git, подробнее об этом читайте тут. В данной же статье как понятно из названия, мы настроим подключение к GitHub через SSH. Что позволит оправлять в репозиторий код без необходимости каждый раз вводить логин и пароль.

Предполагается, что вы уже зарегистрированы на GitHub, регистрация там довольно простая, по этому, ее рассматривать не станем. А также, предполагается, что у вас установлена операционная система Linux, так как именно в ней все действия и будут происходить. Для Windows эта инструкция не подойдет.

Github по SSH

Итак, для начала необходимо сгенерировать SSH ключ, открываем терминал и вводим команду “ssh-keygen”, которая сгенерирует два файла с ключами в директории “~/.ssh”. Один из них будет приватный, другой публичный, он то нас в дальнейшем и будет интересовать. Если данной директории у вас нет, то при выполнении команды она автоматически создастся:

ssh-keygen

В инструкции к GitHub написано, что создавать SSH ключ нужна с такими параметрами как:

ssh-keygen -t ed25519 -C "адрес_вашей_почты"

Это на ваше усмотрение, обе команды создадут SSH ключи, разница лишь в алгоритме. При создании SSH ключа на все вопросы просто нажимаете клавишу Enter:

подключение к GitHub по SSH в Linux 1

Теперь в директории ~/.ssh нас интересует файл с названием “id_rsa.pub”, если вы воспользовались второй командой, то в директории будет создан файл “id_ed25519.pub”, в нем и будет публичный ключ. Для просмотра содержимого воспользуемся командой cat, про которую подробно можно прочесть тут. Итак, в общем, нас интересует публичный ключ из файла который оканчивается на .pub выводим его содержимое и копируем:

cat ~/.ssh/id_rsa.pub
подключение к GitHub по SSH в Linux 2

Что бы не набирать полностью название директорий и файлов, можно воспользоваться клавишей “tab”. Достаточно ввести первые буквы директории или файла нажать “tab”. Далее переходим на GitHub и нажимаем на пункт “Settings”:

подключение к GitHub по SSH в Linux 3

В открывшейся вкладке нас интересует пункт “SSH Keys”, нажимаем на кнопку “New SSH key”:

подключение к GitHub по SSH в Linux 4

Далее придумываем любое имя и вводим его в строку “Title”, ниже в поле “Key” вставляем ранее наш публичный SSH ключ:

подключение к GitHub по SSH в Linux 5

В завершении нажимаем на Add SSH key, нас перебрасывает на окно авторизации где необходимо ввести ваш пароль GitHub. Теперь при запросе отправить ваш код в репозиторий GitHub (git push), вам останется только подтвердить так называемый fingerprint, вписав “yes” и нажав на Enter.

Теперь, если вдруг вам понадобится клонировать репозиторий, то клонируйте его по SSH, выбрав соответствующий пункт из выпадающего списка:

подключение к GitHub по SSH в Linux 6

Заключение

В случае, если вы присоединились к проекту и клонировали репозиторий по HTPPS, то когда вы будете отправлять код в репозиторий GitHub, то вам снова придется вводить логин и пароль. Что бы перевести уже клонированный ранее репозиторий с протокола HTTPS на SSH, существует команда “git remote”. Итак, что бы перевести с HTTPS уже существующий репозиторий на вашей локальной машине на SSH, выполняем команду

“git remote set-url origin” и вставляете ссылку на SSH репозиторий

подключение к GitHub по SSH в Linux 7

Что бы убедится что все сработало как надо, можно ввести команду “git remote v”, в результате сразу же после “origin” должна выводится ссылка на SSH, что можете наблюдать на скриншоте выше.

У меня на GitHub имеется приватный репозиторий, который был создан когда, изучался язык программирования. В этот репозиторий отправлялся код из книги, таким образом, происходило освоение сразу двух технологий. Сейчас этот репозиторий пуст и планируется для других задач…

В одной из следующих статей затронем тему базовых команд, необходимых для работы с git, в том числе и с GitHub.

А на этом сегодня все, если статья оказалась вам полезна, подписывайтесь на социальные сети журнала Cyber-X:

YouTube
ВКонтакте
Telegram
Дзен

По вопросам работы сайта, сотрудничества, а так же по иным возникшим вопросам пишите на E-Mail. Если вам нравится журнал и вы хотите отблагодарить за труды, вы можете перечислить донат на развитие проекта.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Мы используем cookie-файлы для наилучшего представления нашего сайта. Продолжая использовать этот сайт, вы соглашаетесь с использованием cookie-файлов.
Принять
Отказаться
Политика конфиденциальности