HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Мы с вами уже говорили про<a>Git</a>и<a>GitHub</a>. В этой статье расскажем о том, что такое<strong>GitLab</strong>, как им пользоваться, какая настройка потребуется.</p>
1 <p>Мы с вами уже говорили про<a>Git</a>и<a>GitHub</a>. В этой статье расскажем о том, что такое<strong>GitLab</strong>, как им пользоваться, какая настройка потребуется.</p>
2 <p>GitLab - это онлайн-сервис, предназначенный для работы с<strong>git-репозиториями</strong>. Его можно использовать непосредственно на официальном сайте (gitlab.com), зарегистрировав аккаунт, или установить и развернуть на своём сервере.</p>
2 <p>GitLab - это онлайн-сервис, предназначенный для работы с<strong>git-репозиториями</strong>. Его можно использовать непосредственно на официальном сайте (gitlab.com), зарегистрировав аккаунт, или установить и развернуть на своём сервере.</p>
3 <h2>Возможности GitLab</h2>
3 <h2>Возможности GitLab</h2>
4 <p>GitLab - это отличный инструмент для разработчиков, который предоставляет следующие возможности: - управление публичными и приватными git-репозиториями; - управление пользователями и группами, правами доступа к git-репозиториям; - отслеживание ошибок, деплой, анализ кода; - интеграция с разными CI-системами CI (Jenkins и т. п.), организация самостоятельного процесса CI посредством встроенных средств.</p>
4 <p>GitLab - это отличный инструмент для разработчиков, который предоставляет следующие возможности: - управление публичными и приватными git-репозиториями; - управление пользователями и группами, правами доступа к git-репозиториям; - отслеживание ошибок, деплой, анализ кода; - интеграция с разными CI-системами CI (Jenkins и т. п.), организация самостоятельного процесса CI посредством встроенных средств.</p>
5 <p>Есть и другие возможности (функционал api, wiki страниц, доски задач и идей, отслеживание изменений, комментарии к проектам и прочие). Подробнее можно узнать из<a>официальной документации</a>.</p>
5 <p>Есть и другие возможности (функционал api, wiki страниц, доски задач и идей, отслеживание изменений, комментарии к проектам и прочие). Подробнее можно узнать из<a>официальной документации</a>.</p>
6 <h2>GitLab и GitHub</h2>
6 <h2>GitLab и GitHub</h2>
7 <p>Как известно, главный конкурент GitLab - это сервис<strong>GitHub</strong>. Появился он на три года раньше (в 2008), поэтому более популярен. Да что там говорить, GitHub сегодня - это сайт номер один по размещению open source-проектов. Они почти все на нём и размещаются.))) И у многих людей Git напрямую ассоциируется с сервисом GitHub.</p>
7 <p>Как известно, главный конкурент GitLab - это сервис<strong>GitHub</strong>. Появился он на три года раньше (в 2008), поэтому более популярен. Да что там говорить, GitHub сегодня - это сайт номер один по размещению open source-проектов. Они почти все на нём и размещаются.))) И у многих людей Git напрямую ассоциируется с сервисом GitHub.</p>
8 <p>Да, плюсов у GitHub много, но мы не будем сейчас сравнивать оба сервиса. Скажем только, что несмотря на повышенную популярность и огромнейшее комьюнити GitHub (26 млн. человек), наблюдается<strong>тенденция перехода крупных команд разработчиков на GitLab</strong>. Это происходит благодаря расширенным возможностям второго.</p>
8 <p>Да, плюсов у GitHub много, но мы не будем сейчас сравнивать оба сервиса. Скажем только, что несмотря на повышенную популярность и огромнейшее комьюнити GitHub (26 млн. человек), наблюдается<strong>тенденция перехода крупных команд разработчиков на GitLab</strong>. Это происходит благодаря расширенным возможностям второго.</p>
9 <h2>Как использовать GitLab? Настройка сервиса</h2>
9 <h2>Как использовать GitLab? Настройка сервиса</h2>
10 <h3>1. Создание аккаунта</h3>
10 <h3>1. Создание аккаунта</h3>
11 <p>Для начала, зарегистрируемся на сайте<a>GitLab</a>. Для этого нужно перейти на вкладку<strong>Register</strong>, которая находится в правой части экрана. Появится форма, где нужно будет ввести имя, логин, электронную почту.</p>
11 <p>Для начала, зарегистрируемся на сайте<a>GitLab</a>. Для этого нужно перейти на вкладку<strong>Register</strong>, которая находится в правой части экрана. Появится форма, где нужно будет ввести имя, логин, электронную почту.</p>
12 <p>Далее вы получите на почту сообщение, где будет находиться ссылка для подтверждения аккаунта. После перехода по ней появится форма авторизации.</p>
12 <p>Далее вы получите на почту сообщение, где будет находиться ссылка для подтверждения аккаунта. После перехода по ней появится форма авторизации.</p>
13 <p>Путём ввода пароля и логина вы окажетесь на главной странице вашего профиля на GitLab. Сначала это будет страница приветствия, но позже здесь появится перечень ваших Git-репозиториев.</p>
13 <p>Путём ввода пароля и логина вы окажетесь на главной странице вашего профиля на GitLab. Сначала это будет страница приветствия, но позже здесь появится перечень ваших Git-репозиториев.</p>
14 <h3>2. Создание репозитория</h3>
14 <h3>2. Создание репозитория</h3>
15 <p>Для добавления проекта GitLab потребуется кликнуть по значку +, который находится в центре верхней панели. Далее нужно выбрать New Project:</p>
15 <p>Для добавления проекта GitLab потребуется кликнуть по значку +, который находится в центре верхней панели. Далее нужно выбрать New Project:</p>
16 <p>Теперь вводим имя и описание репозитория, выбираем уровень доступа. Их существует три: -<strong>Private</strong>. Доступен только для вас; -<strong>Internal</strong>. К репозиторию смогут получить доступ все зарегистрированные пользователи; -<strong>Public</strong>. Свободный доступ для всех.</p>
16 <p>Теперь вводим имя и описание репозитория, выбираем уровень доступа. Их существует три: -<strong>Private</strong>. Доступен только для вас; -<strong>Internal</strong>. К репозиторию смогут получить доступ все зарегистрированные пользователи; -<strong>Public</strong>. Свободный доступ для всех.</p>
17 <p>Также можно инициализировать репозиторий файлом README, поставив соответствующую галочку. Однако, если планируете залить файлы из уже существующего Git-репозитория, то не стоит этого делать.</p>
17 <p>Также можно инициализировать репозиторий файлом README, поставив соответствующую галочку. Однако, если планируете залить файлы из уже существующего Git-репозитория, то не стоит этого делать.</p>
18 <p>Чтобы попасть на страницу репозитория, нажмите кнопку "Create repo". GitLab предложит первоначальный набор действий с целью проинициализировать ваш репозиторий. В итоге вы сможете создать файлы здесь либо загрузить их из своего ПК.</p>
18 <p>Чтобы попасть на страницу репозитория, нажмите кнопку "Create repo". GitLab предложит первоначальный набор действий с целью проинициализировать ваш репозиторий. В итоге вы сможете создать файлы здесь либо загрузить их из своего ПК.</p>
19 <h3>3. Загрузка файлов проекта</h3>
19 <h3>3. Загрузка файлов проекта</h3>
20 <p>Теперь перейдём к созданию нового локального репозитория на ПК и загрузим содержимое на GitLab. Сначала создадим папку репозитория, назвав её, к примеру, test-repo. Теперь проинициализириуем в ней новый репозиторий, используя команду git:</p>
20 <p>Теперь перейдём к созданию нового локального репозитория на ПК и загрузим содержимое на GitLab. Сначала создадим папку репозитория, назвав её, к примеру, test-repo. Теперь проинициализириуем в ней новый репозиторий, используя команду git:</p>
21 mkdir test-repo &amp;&amp; cd test-repo git init<p>Теперь создаём файл test.txt:</p>
21 mkdir test-repo &amp;&amp; cd test-repo git init<p>Теперь создаём файл test.txt:</p>
22 vi test.txt This is test losst repo<p>И фиксируем изменения:</p>
22 vi test.txt This is test losst repo<p>И фиксируем изменения:</p>
23 git add test.txt git commit -m "Inital commit"<p>Сейчас давайте добавим наш удалённый репозиторий с GitLab к нашему локальному, выполнив следующую команду:</p>
23 git add test.txt git commit -m "Inital commit"<p>Сейчас давайте добавим наш удалённый репозиторий с GitLab к нашему локальному, выполнив следующую команду:</p>
24 git remote add origin https://gitlab.com/losst/test-repo.git<p>Потом отправим изменения в удалённый репозиторий:</p>
24 git remote add origin https://gitlab.com/losst/test-repo.git<p>Потом отправим изменения в удалённый репозиторий:</p>
25 <p>Чтобы отправить данные, введём пароль и логин на GitLab. После обновления страницы на GitLab, увидим наш файл:</p>
25 <p>Чтобы отправить данные, введём пароль и логин на GitLab. После обновления страницы на GitLab, увидим наш файл:</p>
26 <p>Кстати, если удалённый репозиторий пустым не является, так сделать не получится. Потребуется сначала его скачать, слить с ним локальные изменения, а только потом отправить всё назад.</p>
26 <p>Кстати, если удалённый репозиторий пустым не является, так сделать не получится. Потребуется сначала его скачать, слить с ним локальные изменения, а только потом отправить всё назад.</p>
27 <h3>4. SSH-ключи</h3>
27 <h3>4. SSH-ключи</h3>
28 <p>При загрузке данных на GitLab требовалось ввести пароль и логин на сервере. Но есть и другой путь -<strong>SSH-ключи</strong>для авторизации. Для создания ключа выполните:</p>
28 <p>При загрузке данных на GitLab требовалось ввести пароль и логин на сервере. Но есть и другой путь -<strong>SSH-ключи</strong>для авторизации. Для создания ключа выполните:</p>
29 <p>Потом вводим путь к файлу сохранения ключ и оставляем пароль пустым. В результате создаются 2 файла - закрытый ключ и открытый с расширением .pub. Нас интересует открытый, поэтому мы открываем его в текстовом редакторе и копируем содержимое в буфер обмена:</p>
29 <p>Потом вводим путь к файлу сохранения ключ и оставляем пароль пустым. В результате создаются 2 файла - закрытый ключ и открытый с расширением .pub. Нас интересует открытый, поэтому мы открываем его в текстовом редакторе и копируем содержимое в буфер обмена:</p>
30 vi /home/sergiy/.ssh/id-gitlab<p>Потом возвращаемся GitLab-интерфейсу, кликаем по иконке профиля и выбираем настройки Settings:</p>
30 vi /home/sergiy/.ssh/id-gitlab<p>Потом возвращаемся GitLab-интерфейсу, кликаем по иконке профиля и выбираем настройки Settings:</p>
31 <p>Потом ищем на левой панели пункт SSH Keys. Далее находим Key и вставляем в соответствующее поле скопированный ключ. Всё, осталось лишь сохранить изменения.</p>
31 <p>Потом ищем на левой панели пункт SSH Keys. Далее находим Key и вставляем в соответствующее поле скопированный ключ. Всё, осталось лишь сохранить изменения.</p>
32 <p>Теперь возвращаемся в репозиторий, находим кнопку Clone (правый верхний угол) и кликаем по ней. Интересует адрес Clone with SSH:</p>
32 <p>Теперь возвращаемся в репозиторий, находим кнопку Clone (правый верхний угол) и кликаем по ней. Интересует адрес Clone with SSH:</p>
33 <p>Возвращаемся в локальный репозиторий, удаляем https, добавляем ssh:</p>
33 <p>Возвращаемся в локальный репозиторий, удаляем https, добавляем ssh:</p>
34 git remote remove origin git remote add origin git@gitlab.com:losst/test-repo.git<p>На этом настройка ssh в GitLab закончена. С этого момента все действия выполняются по SSH, поэтому вводить логин и пароль не потребуется.</p>
34 git remote remove origin git remote add origin git@gitlab.com:losst/test-repo.git<p>На этом настройка ssh в GitLab закончена. С этого момента все действия выполняются по SSH, поэтому вводить логин и пароль не потребуется.</p>
35 <h3>5. Ветки репозитория</h3>
35 <h3>5. Ветки репозитория</h3>
36 <p>Давайте посмотрим, как использовать GitLab при работе с ветками. По умолчанию репозиторий имеет лишь<strong>master-ветку</strong>. Однако разработку можно выносить и в отдельные ветки, что позволит реализовать дополнительные функции.</p>
36 <p>Давайте посмотрим, как использовать GitLab при работе с ветками. По умолчанию репозиторий имеет лишь<strong>master-ветку</strong>. Однако разработку можно выносить и в отдельные ветки, что позволит реализовать дополнительные функции.</p>
37 <p>Ветки в GitLab-интерфейсе отображаются слева:</p>
37 <p>Ветки в GitLab-интерфейсе отображаются слева:</p>
38 <p>Для создания новой, кликаем по значку + и выбираем New branch. Также, если вы создадите ветку в git, а потом зальёте в репозиторий изменения, ветка появится там автоматически.</p>
38 <p>Для создания новой, кликаем по значку + и выбираем New branch. Также, если вы создадите ветку в git, а потом зальёте в репозиторий изменения, ветка появится там автоматически.</p>
39 <p>Если ветку по умолчанию нужно изменить, открываем настройки репозитория (Settings -&gt; Repository), где выбираем нужную ветку в разделе Default branch:</p>
39 <p>Если ветку по умолчанию нужно изменить, открываем настройки репозитория (Settings -&gt; Repository), где выбираем нужную ветку в разделе Default branch:</p>
40 <h3>5. Слияние веток</h3>
40 <h3>5. Слияние веток</h3>
41 <p>Иногда возникает необходимость выполнить слияние веток. Для этого используют Merge request gitlab -<strong>запросы слияния</strong>. Продемонстрируем это на ветке new-feature, где создадим файл new-feature с текстом:</p>
41 <p>Иногда возникает необходимость выполнить слияние веток. Для этого используют Merge request gitlab -<strong>запросы слияния</strong>. Продемонстрируем это на ветке new-feature, где создадим файл new-feature с текстом:</p>
42 git checkout -b new-feature vi new-feature.txt New feature with change git add new-feature.txt git commit -m "add feature" git push --set-upstream origin new-feature<p>Если мы после этого перейдём в новую ветвь с помощью интерфейса GitLab, мы увидим появившуюся кнопку Create merge request. Естественно, нажимаем:</p>
42 git checkout -b new-feature vi new-feature.txt New feature with change git add new-feature.txt git commit -m "add feature" git push --set-upstream origin new-feature<p>Если мы после этого перейдём в новую ветвь с помощью интерфейса GitLab, мы увидим появившуюся кнопку Create merge request. Естественно, нажимаем:</p>
43 <p>Тут пишем описание Merge Request, выбираем ветку-цель и ветку-источник. Кроме того, можно выбрать пользователя, который получит уведомление о созданном запросе.</p>
43 <p>Тут пишем описание Merge Request, выбираем ветку-цель и ветку-источник. Кроме того, можно выбрать пользователя, который получит уведомление о созданном запросе.</p>
44 <p>Теперь запрос на слияние следует одобрить. Посмотреть изменения можно через терминал или, нажав кнопку Open IDE. Чтобы слить ветки, осталось нажать кнопку Merge.</p>
44 <p>Теперь запрос на слияние следует одобрить. Посмотреть изменения можно через терминал или, нажав кнопку Open IDE. Чтобы слить ветки, осталось нажать кнопку Merge.</p>
45 <h3>7. Добавление пользователей</h3>
45 <h3>7. Добавление пользователей</h3>
46 <p>В GitLab можно работать с командой, добавляя неограниченное число разработчиков.</p>
46 <p>В GitLab можно работать с командой, добавляя неограниченное число разработчиков.</p>
47 <p>Настройка проста: - открываем Settings -&gt;Members; - в поле Select members to invite вводим никнеймы либо адреса электронной почты тех, кого приглашаем; - в поле Choose a role permission выбираем уровень их доступа; - нажимаем Add to project.</p>
47 <p>Настройка проста: - открываем Settings -&gt;Members; - в поле Select members to invite вводим никнеймы либо адреса электронной почты тех, кого приглашаем; - в поле Choose a role permission выбираем уровень их доступа; - нажимаем Add to project.</p>
48 <h3>8. Удаление проекта</h3>
48 <h3>8. Удаление проекта</h3>
49 <p>Настройки для удаления проекта с Gitlab: - открываем Settings -&gt; General -&gt; Advanced; - выбираем и нажимаем Remove Project внизу страницы; - вводим имя проекта, который нужно удалить.</p>
49 <p>Настройки для удаления проекта с Gitlab: - открываем Settings -&gt; General -&gt; Advanced; - выбираем и нажимаем Remove Project внизу страницы; - вводим имя проекта, который нужно удалить.</p>
50 <h2>Послесловие</h2>
50 <h2>Послесловие</h2>
51 <p>В нашей статье мы вкратце разобрали, как пользоваться GitLab при разработке софта. Однако это далеко не все возможности, которые предоставляет данный сервис. И совершенно неслучайно GitLab сегодня называют<strong>полноценной альтернативой GitHub</strong>. Впрочем, что выбирать, GitHub или GitLab, - решать вам.</p>
51 <p>В нашей статье мы вкратце разобрали, как пользоваться GitLab при разработке софта. Однако это далеко не все возможности, которые предоставляет данный сервис. И совершенно неслучайно GitLab сегодня называют<strong>полноценной альтернативой GitHub</strong>. Впрочем, что выбирать, GitHub или GitLab, - решать вам.</p>
52 <p>При подготовке статьи использовались материалы из следующих источников:<em><a>https://losst.ru/kak-polzovatsya-gitlab</a>;</em><a>https://serveradmin.ru/ustanovka-i-nastroyka-gitlab/?pdf=7240</a>.</p>
52 <p>При подготовке статьи использовались материалы из следующих источников:<em><a>https://losst.ru/kak-polzovatsya-gitlab</a>;</em><a>https://serveradmin.ru/ustanovka-i-nastroyka-gitlab/?pdf=7240</a>.</p>
53  
53