Что такое gitlab и для чего он нужен
Как пользоваться GitLab
В этой статье мы поговорим о том, как пользоваться GitLab для разработки своих проектов. Как создавать репозитории и взаимодействовать с ними. Если вам нужна информация по Git, то лучше смотрите статью как пользоваться git.
Как пользоваться GitLab
1. Создание аккаунта
Зарегистрироваться на GitLab очень просто. Откройте главную страницу GitLab найдите в правой части экрана форму входа и перейдите на вкладку Register. Здесь вам нужно ввести ваше имя, логин, адрес электронной почты, согласится с условиями использования и нажать кнопку Register:
После этого вам на почту придет сообщение со ссылкой для подтверждения аккаунта, перейдите по ней:
Теперь ваш аккаунт подтвержден и вы можете в нём авторизоваться:
После ввода логина и пароля вы попадете на главную страницу профиля. Сейчас здесь страница приветствия, но позже тут будет список ваших репозиториев:
2. Создание репозитория
Чтобы добавить проект GitLab кликните по значку + по центру верхней панели и выберите New Project:
Здесь вам нужно ввести имя репозитория, его описание, а также выбрать уровень доступа:
Ещё вы можете установить галочку напротив Инициализировать репозиторий файлом README, но если вы хотите залить сюда файлы из уже существующего репозитория, делать этого не следует:
После нажатия на кнопку Create repo вы попадаете на страницу репозитория. Здесь GitLab уже предлагает первоначальный набор действий, чтобы проиниализировать ваш репозиторий. Например, вы можете создать здесь файлы или загрузить сюда файлы из вашего компьютера.
4. Загрузка файлов проекта
Давайте создадим новый локальный репозиторий на компьютере и загрузим его содержимое на GitLab. Для этого создайте папку репозитория, например, test-repo и инициализируйте в ней новый репозиторий командой git:
mkdir test-repo && cd test-repo
Затем давайте создадим файл test.txt:
This is test losst repo
И зафиксируем изменения:
Дальше нам нужно добавить наш удаленный репозиторий с GitLab к нашему локальному. Для этого выполните:
git remote add origin https://gitlab.com/losst/test-repo.git
Затем отправляем изменения в удаленный репозиторий:
git push origin master
Для отправки данных нужно ввести ваш логин и пароль на GitLab. Теперь, если вы обновите страницу репозитория на GitLab, то увидите там наш файл:
Важно отметить, что если удаленный репозиторий не пуст, то у вас не получиться так сделать. Вам нужно будет сначала скачать удаленный репозиторий, слить локальные изменения с ним, а потом уже отправить всё назад.
5. SSH ключи
Во время загрузки данных репозитория на GitLab нам нужно было ввести логин и пароль на сервере. Чтобы этого избежать можно использовать SSH ключи для авторизации. Сначала вам нужно создать такой ключ. Для этого откройте терминал и выполните:
Далее возвращайтесь к интерфейсу GitLab кликните по иконке профиля и выберите Settings:
Здесь на левой панели найдите пункт SSH Keys. В этом окне найдите поле Key и вставьте туда скопированный ключ. Далее сохраните изменения. Теперь ваш ключ добавлен:
Далее вернитесь в ваш репозиторий, найдите в правом верхнем углу кнопку Clone и кликните по ней. Нас интересует адрес Clone with SSH:
Возвращаемся к нашему локальному репозиторию, удаляем адрес https и добавляем ssh:
git remote remove origin
git remote add origin git@gitlab.com:losst/test-repo.git
Настройка ssh GitLab завершена. Теперь все действия будут выполняться по SSH и у вас не будет необходимости вводить логин и пароль.
6. Ветки репозитория
Создать новую ветку можно кликнув по значку плюс и выбрав New branch. Но это не обязательно, так как если вы создадите ветку в git и зальете изменения в репозиторий, то ветка появится там автоматически.
6. Слияние веток
Поскольку у нас есть ветки и в них разрабатывается функциональность может возникнуть необходимость перенести её из одной ветки в другую. Для этого используются запросы слияния (Merge request gitlab). Давайте добавим ветку new-feature, а в ней создадим файл new-feature с текстом:
New feature with change
Теперь, когда мы перейдем в новую ветку через интерфейс GitLab появится кнопка Create merge request. Нажмите на неё:
Здесь нужно написать описание Merge Request, который вы создаете, выбрать ветку источник и ветку цель. Также можно выбрать пользователя, которому будет оправлено уведомление о созданном запросе:
Далее запрос на слияние нужно одобрить. Вы можете посмотреть изменения нажав кнопку Open IDE или через терминал:
Далее просто нажмите кнопку Merge, если хотите слить ветки. Файлы ветки источника заменят файлы в ветке преемника, поэтому будьте осторожны, чтобы не потерять важные данные.
8. Добавление пользователей
Затем нажмите кнопку Add to project.
9. Удаление проекта
После нажатия на кнопку вам нужно будет ввести имя проекта, после чего он будет удален:
Выводы
В этой статье мы кратко разобрали как пользоваться GitLab для разработки программного обеспечения. Это далеко не все возможности GitLab, которые заслуживают внимания, там ещё есть релизы, сообщения об ошибках, инструменты автоматизации и тестирования, удобный редактор кода и многое другое. В общем это полноценная альтернатива для GitHub если тот сервис больше вам не нравится. А что вы предпочитаете, GitHub или GitLab? Напишите в комментариях!
GitLab для начинающих: как и для чего используется
Время чтения : 7 минут
GitLab для начинающих: как и для чего используется
В материале подробно разбираем, что такое GitLab, для чего используется, чем отличается от аналогов и как с ним работать.
Что такое GitLab
GitLab представляет собой веб-приложение и систему управления репозиториями программного кода для распределенной системы контроля версий Git. GitLab, как правило, используется с Git, что позволяет разработчикам сохранять написанный код в онлайн-формате и работать с другими разработчиками над разными проектами.
GitLab позволяет взаимодействовать с репозиториями, управлять правами доступа и пользователями, отслеживать ошибки, автоматизировать процессы и выполнять многие другие операции. Установить и использовать его можно на собственном сервере или же в облаке.
Для чего нужен GitLab
GitLab имеет множество возможностей, основные из них представлены ниже.
Планирование
GitLab способен эффективно поддерживать различные модели коллективной работы вне зависимости от выбранной методологии разработки. Гибкие инструменты управления проектами GitLab позволяют делать процесс разработки наглядным, координировать его, отслеживать и назначать приоритеты.
Создание
С Gitlab команда разработчиков может консолидировать исходный код в общей распределенной среде контроля версий. Веб-сервис позволяет управлять и поддерживать распределенную среду, не нарушая процессы разработки.
GitLab имеет целый арсенал инструментов для управления ветками и доступом к проектам, создавая общую достоверную среду для совместной работы команды разработчиков.
Тестирование
В GitLab реализованы инструменты ревью кода, его тестирования и оценки качества, что позволяет разработчикам быстрее находить ошибки и сокращать цикл их исправления.
Можно персонально настраивать модель приемки качества, тестировать код в автоматическим режиме и назначать изменения в среды тестирования для каждой версии кода.
Сборка
Репозиторий контейнеров GitLab дает возможность создавать безопасное хранилище кастомных образов контейнеров Docker. Причем для этого не придется задействовать дополнительные инструменты — возможности скачивания и загрузки образов внедрены в среду управления репозиторием Git по умолчанию.
Релиз
Компоненты поддержки технологий непрерывной доставки и развертывания позволяют эффективно автоматизировать операции, связанные со сборкой, автоматическим тестированием и установкой релизов. Установка релиза как на один сервер, так и на множество, будет занимать минимум времени.
Конфигурирование
GitLab позволяет автоматизировать весь процесс разработки приложения. Для этого предоставляются готовые шаблоны моделей, с которыми начать работу можно без сложных предварительных настроек — достаточно добавить специфику приложения на каждом этапе сборки и развертывания.
В качестве сервиса с предварительно настроенными шаблонами приложений для разработки можно использовать GitLab CE Virtual Appliance.
Мониторинг
С GitLab можно отслеживать время, затраченное на каждый этап, проверять работоспособность приложения, собирать и просматривать метрики, а также анализировать, как изменения кода влияют на производительность среды.
Пример страницы Мониторинга
Git, GitLab и GitHub
Каждому разработчику важно знать и понимать, чем отличаются и схожи Git, GitLab и GitHub.
Git представляет собой распределенную систему контроля версий. Она позволяет разработчикам контролировать изменения в файлах и работать совместно с другими специалистами. Git также локально сохраняет весь репозиторий в файл небольшого объема, не снижая качества данных.
GitHub, как и GitLab, представляет собой онлайн-сервис для размещения репозиториев, удаленного управления ими и других задач разработки. В нем предусмотрены багтрекинг, вики для каждого проекта, история коммитов, графика, вложенные списки задач и многое другое.
Оба сервиса предназначены для использования группами разработчиков, поэтому многие функции и возможности GitHub и GitLab дублируются. Вместе с тем, есть и отличия:
Подробнее о том, чем еще отличается GitLab, можно прочитать на официальном сайте веб-приложения.
Еще одним решением для разработки является Cloud Container Engine от SberCloud — сервис для автоматизации развертывания, масштабирования и управления приложениями в высокопроизводительных кластерах Kubernetes. Он обеспечивает высокую производительность, корпоративную надежность и безопасность, а также открытость и совместимость.
Как пользоваться GitLab
Рассмотрим основные этапы работы с GitLab:
Создание аккаунта
На GitLab простая процедура регистрации. На главной странице официального сайта есть форма входа, в которой надо ввести только имя пользователя или адрес электронной почты и придумать пароль. После отправки запроса остается только подтвердить регистрацию в письме, отправленном на указанную почту.
Страница регистрации в GitLab
Для входа можно использовать аккаунты в других сервисах и социальных сетях.
Создание репозитория
Для создания нового проекта надо нажать на значок «+» по центру экрана и выбрать соответствующий пункт.
Страница создания проекта
При создании надо указать имя, описание репозитория и определить уровень доступа: приватный, доступный всем зарегистрированным или публичный.
После указания всех данных и нажатия на кнопку «Create repo», репозиторий будет создан, а на его странице будет доступен стартовый набор действий.
Также GitLab позволяет настроить работу удаленного репозитория. Это значит, что продвинутые пользователи смогут решать большинство рутинных задач через консольные команды или графических клиентов.
Загрузка файлов проекта
В интерфейсе предусмотрены удобные варианты загрузки проектов. На главной странице репозитория можно загрузить файл, создать новый файл, добавить лицензию и файл Readme. При этом загрузка файлов с компьютера выполняется быстро, не требует переформатирования или других операций.
SSH-ключи
Чтобы во время загрузки данных репозитория не приходилось вводить логин и пароль, для авторизации можно использовать SSH-ключи. Они создаются в несколько шагов:
После этого создается два файла — закрытый и открытый. Для создания ключей нужен открытый. Его нужно открыть в текстовом редакторе и скопировать содержимое в буфер обмена. Затем нужно перейти в GitLab и выбрать «Настройки» (Settings). В меню настроек в пункте «SSH Keys» в поле «Key» надо вставить скопированный ранее текст и сохранить изменения. Далее нужно перейти в репозиторий и нажать на кнопку «Clone». После этого нужно вернуться к локальному репозиторию, удалить адрес https и добавить ssh. На этом настройка SSH-ключей будет завершена.
Ветки репозитория
По умолчанию в репозитории GitLab предусмотрена только одна ветка — master(main). При этом для реализации вспомогательных функций отдельные этапы разработки можно выносить в независимые ветки. В веб-интерфейсе сервиса ветки отображаются слева, что упрощает переход между ними. Ветки создаются в пару кликов — нужно выбрать «+» по центру экрана и нажать «New branch». Кроме того, после обновления изменений в репозитории в GitLab отображаются и новые ветки, созданные в Git. Все операции с ветками можно выполнять через настройки.
Слияние веток
В ветках разрабатывается функциональность, поэтому может потребоваться их перенос — для этого предназначены запросы слияния («Merge request gitlab»). Для использования этой возможности в интерфейсе GitLab нужно нажать кнопку «Create merge request», задать описание «Merge Request», выбрать исходную и целевые ветки. После одобрения запроса на слияние надо нажать на кнопку «Merge». В результате файлы ветки преемника будут заменены файлами из ветки источника.
Добавление пользователей
В GitLab можно добавлять неограниченное количество разработчиков даже к приватным репозиториям. Чтобы сделать это, надо перейти в меню «Настройки» (Settings) и выбрать пункт «Участники» (Members). В этом пункте в поле «Выбрать участника для приглашения» (Select members to invite) надо указать адрес электронной почты пользователя или его никнейм. Перед отправкой приглашения также указывается уровень доступа. Для добавления надо нажать «Добавить в проект» (Add to project).
Удаление проекта
Возможные проблемы
При работе с GitLab могут возникать проблемы, для каждой из которых есть решение:
Веб-приложение GitLab является отличным решением для построения рабочих процессов CI/CD в облаке, в том числе если системы контроля и разработки надо установить на личном сервере.
GitLab имеет множество сфер применения и широкие возможности, что в сочетании с удобным инструментарием делает его удобным сервисом как для начинающих разработчиков, так и для профессионалов.
GitLab активно развивается как продукт, подстраиваясь под актуальные потребности разработчиков, поэтому его применение оправдано в проектах любого масштаба.
Как пользоваться GitLab
Вы узнаете для чего нужен Gitlab, почему его используют в команде, а также познакомитесь с его основными возможностями.
Как пользоваться GitLab
Как работает GitLab
Самые важные функции:
1. создание отдельных веток от главной или так называемого «мастера», можно сказать, продакшн-версии проекта. Такое ветвление как бы создает копию, что позволяет эксперементировать, работая над разными участками кода, не затрагивая при этом исходный проект (откуда была создана ветка).
2. Когда вы довольны внесенными изменениями, можно отправить запрос на слияние. Запрос на слияние отправляется владельцу проекта, который может просмотреть внесенные вами изменения и задать любые дополнительные вопросы. Если владельца проекта все устраивает, он может объединить ваши изменения с исходным кодом.
3. подтягивание изменений с удаленного репозитория. Если код проекта обновился, все участники проекта смогут «подтянуть» изменения, то есть обновить проект до самой актуальной верии одной командой,
Работа с GitLab
1. СОЗДАНИЕ АККАУНТА
Для входа в свою учетную запись перейдите по ссылке ссылке.
Если у вас еще нет аккаунта на gitlab нажмите «Register now» и заполните нужные поля. Далее нужно будет подтвердить регистрацию с помощью письма, которое будет отправлено вам на электронную почту.
После ввода имени пользователя и пароля, вы окажетесь на главной странице вашего GitLab профиля. Когда у вас будут активные проекты (репозитории), они будут отображаться здесь.
2. СОЗДАНИЕ НОВОГО ПРОЕКТА/РЕПОЗИТОРИЯ
Чтобы создать новый проект нажмите «+«, который находится на верхней панели и нажмите «новый проект» («new project»):
Если поставить галочку напротив «Initialize repository with README», то проект инициализируется и создается файл README.txt. Делать это здесь не обязательно!
После заполнения полей, подтверждаем действие нажатием «Create repo«, после чего попадаем на страницу репозитория. На этой странице можно создать файлы или подгрузить их со своего компьютера.
3. ПЕРЕНОС ПРОЕКТА НА УДАЛЕННЫЙ РЕПОЗИТОРИЙ GITLAB
Давайте создадим новый репозиторий на своем компьютере и перенесем его содержимое на GitLab. Так проект станет доступным для всех, кто является участником проекта.
Прежде всего репозиторий нужно создать и инициализировать командой «git»:
Создаем репозиторий с помощью командной строки (название репозитория пусть будет repo_name):
Переходим в репозиторий проекта:
Давайте создадим файл test_file.txt:
Теперь зафиксируем изменения(-m означает сообщение комита):
Дальше нам нужно добавить созданный удаленный репозиторий с GitLab к нашему локальному. Для этого выполните команду:
Чтобы проталкивания изменений в удаленный репозиторий нужно выполнить команду:
После этого потребуется ввести данные учетной записи.
Проект перенесен на удаленный репозиторий. Вы можете зайти на gitlab и проверить.
Если удаленный репозиторий не пуст, например, при создании проекта вы уже инициализировали его, добавив файл README, то выполнить эти действия не получится.
В этом случае нужно сначала скачать удаленный репозиторий, слить локальные изменения с ним, а потом уже отправлять изменения.
4. ДОСТУП ПО SSH-КЛЮЧУ
SSH-ключ нужен, прежде всего, для того, чтобы при каждой отправке и загрузке изменений удаленного репозитория не приходилось вводить логин и пароль.
SSH-ключ создаётся с помощью команды:
Склонировать репозиторий по ssh-ключу
Далее перейдите в ваш удаленный репозиторий на gitlab, найдите кнопку Clone в правом верхнем углу. Нажав по ней, вы увидите, что проект можно склонировать на локальный компьютер, используя ssh-ключ:
Переходим к локальному репозиторию (на вашем компьютере), удаляем https-адрес и добавляем скопированный ssh адрес:
Готово! Теперь есть доступ к проекту на gitlab по ssh-ключу. Логин и пароль вводить не надо.
5. РАБОТА С ВЕТКАМИ
По умолчанию у вновь созданного репозитория есть только master ветка. Как уже упоминалось, это главная ветка, там может хранится ПО, которое используется в продакшн.
Для того, чтобы экспериментировать, создавать новые функции, не рискуя при этом вызвать фатальные ошибки или сбой в работе ПО, нужно рабоать в отделных ветках. Например, в отдельную ветку может выноситься новый функционал или в отдельной ветке может работать определенный участник проекта. Вот так в интерфейсе gitlab выглядят ветки:
Создание ветки
Создать новую ветку можно двумя способами:
1. используя git:
2. используя интерфейс gitlab:
Кликаем по значку «+» и нажимаем «New branch«.
Если вы используете git для создания ветки, то после проталкивания изменений в удаленный репозиторий, ветка появится там автоматически.
Проталкивание локальных изменений в удаленный репозиторий
Итак, представим, что мы сделали какие-то изменения в ветке «new-feature» (в данном случае добавили файл new_file).
Для того, чтобы эти изменения перенеслись в вашу ветку «new-feature» на удаленном репозитории нужно выполнить команды:
6. СЛИЯНИЕ ВЕТОК
Для того, чтобы перенести функционал, разработанный в какой-то ветке в другую ветку, нужно делать запрос на слияние (merge request).
Сделать это можно через интерфейс GitLab. Нужно нажать на кнопку «Create merge request«.
Если изменения проверены и вы готовы влить их в целевую ветку, нажмите кнопку «merge». Все изменения будут добавлены в целевую ветку.
! все удаленные в сливаемой ветке файлы удалятся и в целевой ветке при слиянии, а измененные файлы заменят старые. Те файлы, которые вы не меняли останутся в прежнем состоянии.
7. ДОБАВЛЕНИЕ ПОЛЬЗОВАТЕЛЕЙ К ПРОЕКТУ
Как уже упоминалось, зачастую в репозитории работает не один человек, а целая команда. Для того, чтобы добавить к проекту разработчиков откройте настройки (Settings). Перейдите во вкладку Members. Здесь в окне Select или Invite member введите логин или email пользователей, которых хотите пригласить и выберете их роль в проекте выберите. Нажмите кнопу «Invite«.
Сохраняйте статью к себе на стену, чтобы не потерять ⬇