Поскольку не нашел последовательной инструкции на русском языке пишу свою.
Инструкция актуальна на момент создания поста и через продолжительное время могут перестать работать как отдельные её пункты, так и вся в целом.
Инструкция составлена на основе этих мануалов:
тыц (https://docs.gitlab.com/ee/user/ssh.html), тыц (https://kazarin.online/index.php/2019/02/10/introduction-to-devops-how-to-use-git-for-example/)
Поехали.
Первичные вводные:
Установлен и настроен
Visual Studio Code, а также создан аккаунт на
GitLab.
1. Устанавливаем систему контроля версий локально, командой:
sudo apt install git
2. Создаём ключ для подключения по ssh:
ssh-keygen -t rsa -b 2048
В каталоге
~/.ssh появятся 2 файла
id_rsa и
id_rsa.pub Если вы собираетесь оставить ключи в этом каталоге необходимо переименовать их дабы не перезатереть при создании новых ключей, пусть это будут имена
git и
git.pub.
Файл
git не показываем никому т.к. в нём хранится приватный ключ, а файл
git.pub мы потом скопируем в аккаунт на
GitLab.
3. В файл
~/.ssh/known_hosts прописываем строчки
gitlab.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAfuCHKVTjquxvt6CM6tdG4SLp1Btn/nOeHHE5UOzRdf
gitlab.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsj2bNKTBSpIYDEGk9KxsGh3mySTRgMtXL583qmBpzeQ+jqCMRgBqB98u3z++J1sKlXHWfM9dyhSevkMwSbhoR8XIq/U0tCNyokEi/ueaBMCvbcTHhO7FcwzY92WK4Yt0aGROY5qX2UKSeOvuP4D6TPqKF1onrSzH9bx9XUf2lEdWT/ia1NEKjunUqu1xOB/StKDHMoX4/OKyIzuS0q/T1zOATthvasJFoPrAjkohTyaDUz2LN5JoH839hViyEG82yB+MjcFV5MU3N1l1QL3cVUCh93xSaua1N85qivl+siMkPGbO5xR/En4iEY6K2XPASUEMaieWVNTRCtJ4S8H+9
gitlab.com ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFSMqzJeV9rUzU4kWitGjeR4PWSa29SPqJ1fVkhtj3Hw9xjLVXVYrU9QlYWrOLXBpQ6KWjbjTDTdDkoohFzgbEY=
Если его нет - создаём.
Этот пункт не обязателен, но желателен т.к. позволяет увидеть какие строчки отвечают за аутентификацию и при проблеме с оной удалить их без удаления
known_hosts целиком.
Строчки взяты здесь (https://docs.gitlab.com/ee/user/gitlab_com/index.html#ssh-known_hosts-entries) и если текущие не подошли можно взять новые.
4. В файл
/etc/ssh/ssh_config (для редактирования требуется
root) вставляем строки:
Host gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/git
Где
git имя вашего файла с приватным ключом. Это необходимо для того чтобы данный ключ использовался только для подключения к
GitLab.
5. Делаем базовую настройку
git:
Прописываем имя пользователя и имейл, которыми будут подписываться коммиты
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com
выбираем редактор по умолчанию
git config --global core.editor nano
выбираем имя главной ветки по умолчанию
git config --global init.defaultBranch main
Если вам необходимо, в одном репозитории изменить эти данные, то нужно выполнить эти команды внутри репозитория без параметра --global.
6. Далее идем на сайт
GitLab, в настройки вашего аккаунта и ищем пункт
SSH keysНа текущей версии это выглядит так:
Нажимаем
Add new key 
В поле
Key вставляем содержимое файла
git.pub. Если скопировали правильно поле
Title заполнится автоматически, но вы можете изменить его по своему усмотрению. Для постоянных ключей поле
Expiration date нужно очистить, для временных выставить необходимую дату и нажать
Add key.
7. Проверяем подключение к
GitLabssh -T git@gitlab.com
Если все предыдущее пункты были выполнены правильно по получим вывод:
Welcome to GitLab, @(имя аккаунта)!
Если нет то проверяем командой
ssh -Tvvv git@gitlab.com
и смотрим где споткнулись
Пункты с
8 по
11 можно делать каждый раз, а можно сделать предварительно и потом просто копировать как шаблон.
8. Создаем каталог проекта и переходим в него. Если он создаётся как шаблон, то можно добавить следующие подкаталоги:
Sample|
|__
Datasheet|
|__
Manual|
|__
Shematic & Boardview|
|__
Source9. Создаём локальный репозиторий
gitgut init
10. В появившемся файле
.git/info/exclude Прописываем исключения, которые не будут попадать в
gitМой файл такой
# Node artifact files
node_modules/
dist/
# Compiled Java class files
*.class
# Log files
*.log
# Package files
*.jar
# Backup files
*.bak
*-backups/
# Maven
target/
dist/
# IDE
.idea/
.vscode/
.pio/
# Unit test reports
TEST*.xml
# Generated by MacOS
.DS_Store
# Generated by Windows
Thumbs.db
# Applications
*.app
*.exe
*.war
# Large media files
*.mp4
*.tiff
*.avi
*.flv
*.mov
*.wmv
11. Копируем шаблон проекта в рабочий каталог и переименовываем по вашему вкусу корневой каталог проекта, у меня это будет
TEST. Именем корневого каталога по умолчанию будет назван проект на
GitLab.
Сейчас список каталогов выглядит так
TEST|
|__
Datasheet|
|__
Manual|
|__
Shematic & Boardview|
|__
Source|
|__
.git
Открываем
Visual Studio Code и дальнейшие действия будем проводить в нём.
11. Переходим в расширения

Ищем и устанавливаем
GitLab Extension Pack.
12. Далее нужно залогиниться на Gitlab через Visual Studio Code.
а. В левом нижнем углу кликаем по надписи
No GitLab Account.
b. Наверху, посередине окна, появится выпадающее меню в коем необходимо выбрать строчку
https://gitlab.com
c. Следующее меню предлагает 2 варианта аутентификации:
По паролю, пункт
OAuth.
По токену, пункт
Personal Access Token.
Я предпочитаю второй вариант, т.к. если пропадёт доступ к ПК то авторизацию можно прекратить с сайта.
d. Если у вас уже есть токен, то кликаем по надписи
Enter an existing token и переходим к пункту
g.
Если нет, то ваш выбор надпись
Create a token first. Кликнув по которой попадаем на страницу где нам предложат его создать.
e. Здесь в поле
Token name задаём нужное вам имя токена. Поле
Expiration date можно оставить пустым тогда автоматом встанет максимальное время жизни токена (11 месяцев). Галочками выбираем разрешения, для базовых функций хватит указанных на скриншоте, остальные на ваше усмотрение. Выбираем сразу, изменить после их будет нельзя, только создавать новый токен. Кликаем по кнопке
Create personal access token и переходим к следующему пункту.
f. Токен создан, копируем его и возвращаемся в
Visual Studio Code. Окно можно закрыть.
ВНИМАНИЕ!!! это единственный момент когда вы сможете его посмотреть и скопировать.
g. Вставляем токен и нажимаем ввод.

Как удалить аккаунт GitLab из Visual Studio Code
Процедура нужна если срок токена вышел, или вы хотите выйти из аккаунта
GitLab, да выход только по удалению аккаунта, все настройки сохраняются.
а. Идем в меню
Вид/Палитра команд
b. В выпадающем меню пишем:
GitLab:Remove Account from VS Code, выбираем этот пункт и нажимаем Ввод.

В принципе всё, можно пользоваться, кто знает как работать с системами контроля версий в
Visual Studio Code может дальше не читать, а мы продолжим.
13. Открываем ранее подготовленный шаблон проекта. Для этого необходимо нажать на значок проводника (по умолчанию он расположен по меню файл) и выбрать пункт
Открыть папку.

Если для каталога проекта вам необходимо использовать не корневой каталог, а вложенный (например вы используете
PlatformIO), то открываем именно его. Программа найдёт репозиторий в корневом каталоге и выдаст запрос на использование.
Лирическое отступление касательно PlatformIO
У
PlatformIO есть одна неприятная особенность, эта среда автоматически создаёт файл
.gitignore в своём каталоге и на момент написания статьи не инвазивного средства отключить эту функцию нет.
Запрос разработчикам создан ещё в феврале 22-го. На данный момент проблема решается удалением или переименованием файла
.gitignore.tpl Сделать это можно командой:
mv ~/.platformio/penv/lib/python3.10/site-packages/platformio/project/integration/tpls/vscode/.gitignore.tpl ~/.platformio/penv/lib/python3.10/site-packages/platformio/project/integration/tpls/vscode/.gitignore.tpl.back
Только в пути нужно прописать версию вашего
python или пройти по этому пути в ручную.

Затем спросит какой из найденных открыть, выбираем наш.

Локальный гит репозиторий подключен.
14. Для начала отслеживания необходимо добавить файлы в репозиторий.
a. Для этого нажимаем на значок
Система управления версиями
b. В поле
Cообщение прописываем удобочитаемый комментарий. Обычно кратко описывают произведённые изменения (очень катко, буквально 2-3 слова), но поскольку это первое добавление Можно просто написать
Первый коммит. Затем нажимаем на кнопку
Фиксация.
c. соглашаемся.

15.Для выгрузки/создания репозитория на GitLab нам необходимо ...
a. Нажать кнопку
Опубликовать Branch
b. В выпадающем меню выбирать
Опубликовать в GitLab
c. Затем наш аккаунт
d. Тип репозитория и способ загрузки. В моём примере Тип-приватный, способ-SSH. Также можно задать имя, как уже говорилось ранее по умолчанию это имя корневого каталога.

По нажатию справа, снизу появится сообщение о загрузке
e. Поcле успешной загрузки, программа предложи перейти на
GitLab. Переходим и видим наш репозиторий.

16.Для клонирования репозитория на другом ПК
a. На сайте выбрать нужный репозиторий, нажать
Code и нажать подходящую строку
Visual Studio Clone... (в нашем случае
Visual Studio Clone (SSH)).
b. Программа
Visual Studio Code автоматически запустится и предложит выбрать место сохранения после чего в правом нижнем углу появится сообщение о загрузке по завершении которой репозитарий откроется.

На этом всё, дальнейшая работа с репозиторием это тема отдельной статьи и здесь рассматриваться не будет. Благодарю за внимание.