Оглавление
| Статьи по теме
|
Эта инструкция для тех, кто получил нужные доступы и подготовил окружение для работы, но ещё не скачал и ни разу не запустил исходный код.
...
- Аккаунт на gitlab.com и доступ к репозиторию https://gitlab.com/fpmi/stfpmi-mastermipt.tech/mipt.tech (если ссылка открывается и не ведёт на 404 - то доступ есть. Иначе - обращайся к Ivan Arkhipov )
- Установленный и готовый к работе Docker
- Установленная и готовая к работе VSCode
Шаг 1: Генерация ssh-ключа на Gitlab.com
| Info |
|---|
Чтобы загружать исходники из репозитория и выгружать изменения в него, требуется авторизация. Есть два варианта:
Мы пойдём вторым путем, т.к. он в конечном итоге более удобный и безопасный (хоть и чуть менее очевидный) |
Создаём ssh-ключ:
Генерируем ключ на базе алгоритма ED25519 (считается более безопасным, чем RSA) и сохраняем в файлик ~/.ssh/gitlab с комментарием "My gitlab key"
При желании можно дополнительно защитить ключ паролем, но это необязательно.
Комментарий, как и путь для сохранения, можешь указывать какие больше нравятся (но рекомендуется всё же использовать папку ~/.ssh).
| Code Block | ||
|---|---|---|
| ||
ssh-keygen -t ed25519 -C "My gitlab key" -f ~/.ssh/gitlab |
После этого будут созданы файлы ~/.ssh/gitlab.pub и ~/.ssh/gitlab
Первый файл - это твой публичный ключ. Второй - это приватный ключ.
Публичный ключ используется для проверки подлинности данных, которые зашифрованы твоим приватным ключом. Его можно распространять без опаски.
Приватный ключ используется для шифрования данных и "подписывания" их. Его никогда и никуда нельзя заливать или распространять, он должен храниться только на твоём компьютере и нигде больше. Если кто-то получил твой приватный ключ - это равноценно тому, что кто-то получил твои пароль или подпись.
Публичный ключ выглядит, например, вот так:
...
| Code Block |
|---|
...
|
...
| showLabels | false |
|---|---|
| max | 5 |
| spaces | ST |
| showSpace | false |
| sort | modified |
| reverse | true |
| type | page |
| cql | label = "onboarding" and type = "page" and space = "ST" |
| labels | Onboarding |
...
| hidden | true |
|---|
...
| |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH6/mRpV74Hb4gBnMSWA3R3mKpd+6Zy54TycUFrE/rc0 My gitlab key |
Приватный ключ выглядит, например, вот так:
| Code Block | ||
|---|---|---|
| ||
-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
QyNTUxOQAAACB+v5kaVe+B2+IAZzElgN0d5iqXfumcueE8nFBaxP63NAAAAJDARrPcwEaz
3AAAAAtzc2gtZWQyNTUxOQAAACB+v5kaVe+B2+IAZzElgN0d5iqXfumcueE8nFBaxP63NA
AAAEAIiRcGpAd8OfJDAKLs0eOHi8yRpV392Fh23Iee3brz+36/mRpV74Hb4gBnMSWA3R3m
Kpd+6Zy54TycUFrE/rc0AAAADU15IGdpdGxhYiBrZXk=
-----END OPENSSH PRIVATE KEY----- |
Внимание: ключи выше используются лишь для примера. Ни в коем случае не пытайтесь использовать любой из них!
Шаг 2: Добавление ssh-ключа на Gitlab.com
Чтобы авторизоваться с помощью свежесозданного приватного ключа на гитлабе, тебе надо привязать публичный ключ к аккаунту гитлаба. Делается это следующим образом:
- Открой настройки профиля с помощью меню сверху:
- Выбери раздел SSH Keys в меню слева:
- Вставь свой публичный ключ и нажми кнопку "Add key":
Definition of done: Попробуй выполнить у себя команду
| Code Block | ||
|---|---|---|
| ||
ssh -i ~/.ssh/gitlab git@gitlab.com |
Если всё хорошо - получишь ответ как на картинке:
Шаг 3: Добавление ssh-ключа в ~/.ssh/config
Ты, наверное, заметил, как в прошлой команде нам пришлось явно указать, какой именно ssh-ключ указывать.
При использовании git'а это страшно неудобно, поэтому укажем автоматическое использование свежесозданного ключа для подключения к гитлабу в конфигурационном файле.
Для этого открой файл ~/.ssh/config и отредактируй его содержимое согласно инструкции:
Definition of done: Попробуй выполнить у себя команду
| Code Block | ||
|---|---|---|
| ||
ssh gitlab.com |
Если всё хорошо - получишь ответ как на картинке:
Шаг 4: Клонирование исходников
Переместись в свою домашнюю директорию и выполни команду
| Code Block | ||
|---|---|---|
| ||
git clone git@gitlab.com:mipt.tech/mipt.tech |
Эта команда у тебя скачает исходники и сохранит их в папку mipt.tech:
Не забудь указать своё имя и email (который соответствует твоему email'у на гитлабе) для коммитов git'а!
| Code Block | ||
|---|---|---|
| ||
cd mipt.tech
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com |
Шаг 5: Активация git-хуков
Хуки git - это особые действия, которые выполняются перед коммитом. В нашем случае это проверки кодстайла и автоформатирование, они очень полезны и помогают держать код чуть более чистым.
Чтобы активировать хуки, перейди в папку склонированного репозитория и выполни команду:
| Code Block | ||
|---|---|---|
| ||
cd mipt.tech
./utils/setup-git-hooks.sh |
Кроме того, в папке utils находится несколько достаточно полезных скриптов, их можно изучить)




