Сегодня предлагаю ознакомиться с такой темой как доступ к репозиториям через SSH.
Да эта тема простая, но все же считаю необходимым осветить ее в рамках блога.
В данной заметке используются глобальные настройки Git, но никто не запрещает вам использовать индивидуальные настройки для каждого репозитория. Инструкция по работе с Git будет позже, в виде отдельной статьи.
Почему SSH, а не HTTPS?
У SSH доступа есть несколько преимуществ, а именно:
· SSH не использует аутентификацию по паролю
· SSH проще в настройке
· SSH после настройки позволяет быстро подключаться к приложениям «на лету»
И самое главное отличие:
· Не требуется повторная аутентификация для каждого действия
Что потребуется для работы?
Для работы вам потребуется установленный и настроенный клиент Git. Например, можно взять классический Git с сайта https://git-scm.com/
Настройка Git:
- После установки Git запускаем CMD и вводим команду: git config --list --show-origin
- Сейчас нас интересуют два параметра: user.name и user.email
- Зададим эти параметры глобально:
git config --global user.name "<Имя_пользователя>"
git config --global user.email "<Почта_пользователя>"
Это важно, потому что каждый коммит в Git содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена.
Приступаем к созданию SSH ключей
Всем примеры будут приводится для моей рабочей учетной записи.
Открываем командную строку и выполняем следующие команды:
Создание SSH ключа:
- ssh-keygen -t ed25519 -C "kazinas@gnivc.ru" -f C:\Users\KazinAS\.ssh\bitbucket.gnivc.ru\id_ed25519
- echo "Host bitbucket.gnivc.ru" >> C:\Users\KazinAS\.ssh\config
- echo " IdentityFile C:\Users\KazinAS\.ssh\bitbucket.gnivc.ru\id_ed25519" >> C:\Users\KazinAS\.ssh\config
- cat C:\Users\KazinAS\.ssh\bitbucket.gnivc.ru\id_ed25519.pub
Привязываем SSH ключ к своему аккаунту
- Заходим в Gitea
- Сверху справа "клик" по фото профиля -> "Настройки"
- Выбираем пункт "SSH / GPG ключи" -> "Добавить ключ"
- Указываем имя ключа и открытый ключ, который мы получили командой cat в разделе «Приступаем к созданию SSH ключей»
Клонируем репозиторий
- Заходим в Gitea
- На странице репозитория есть ссылка для клонирования
3. Копируем ее и идем в cmd
4. В cmd вводим git clone <скопированная ссылка>
5. Готово!
Обсудить эту заметку можно в нашем Телеграм канале: https://t.me/devops_spb_ru или в комментариях ниже.