Зіставляємо неоднозначні терміни в GitLab, GitHub і Bitbucket

Всім привіт, поки перекладається стаття про реліз ГитЛаба 8.11, вирішив опублікувати переклад ще однією корисною статті.


В залежності від робочих завдань і потреб клієнтів розробникам доводиться використовувати різні платформи керування репозиторіями. Типовий розробник бере участь в якомусь відкритому проекті на GitHub, а на роботі хостить проект одного клієнта на GitLab, а іншого — в Mercurial і на Bitbucket. Перемикання між платформами ускладнюються тим, що у них одні й ті ж речі можуть називатися по-різному. У цій статті ми допоможемо вам порівняти відмінності і заодно пояснимо, чому ми вибрали саме такі назви.
Починаючи з версії 8.4 GitLab значно покращився процес міграції репозиторіїв з GitHub. Тепер GitLab імпортує не тільки репозиторії, але ще і вікі-сторінки, тікети і пулл-реквесты. При цьому більшість сутностей не змінюють своєї назви. Наприклад, специфічні терміни Git, такі як commit або push, скрізь однакові. Не змінюються і такі загальні терміни, як users, webhooks і issues.
Але деякі терміни все-таки відрізняються. Наприклад, те, що в GitHub і Bitbucket називається пулл-реквестом (pull-request), ми називаємо мерж-реквестом (merge-request). Ми так його назвали, тому що це запит на
merge
гілки для виділеної функціональності (feature branch) з майстер-віткою; власне команда
pull
там ніде не застосовується. До речі, в Git є окрема команда
request-pull
: вона теж дозволяє запропонувати свої зміни та використовує-таки команду
pull
, але має зовсім інший механізм.

Якщо ви тільки починаєте працювати з GitLab, ця таблиця допоможе вам швидше освоїтися:







Bitbucket GitHub GitLab Що це означає Pull Request Pull Request Merge Request GitLab запит на мерж гілки в master назвается мерж-реквестом Snippet Gist Snippet Версионируемый фрагмент коду. Рівень видимості: public, internal або private Repository Repository Project Проект — це структура, що включає в себе репозиторій Git, налаштування, обговорення і інші супутні інструменти Teams Organizations Groups GitLab всі репозиторії належать групам. У групі можна налаштувати рівні доступу до сховища і оповіщення для різних користувачів
Команди, Репозиторії і Організації
Давайте розберемося, чим відрізняються команда (team), репозиторій (repository) і організація (organization). В GitHub репозиторії містять власне сховище Git або SVN, а також тікети (issues), статистику участі і т. п. При цьому, користувачі нерідко називають репозиторії проектами.
У GitLab ми усунули неоднозначність, явно називаючи таку структуру проектом (project). Проект включає в себе репозиторій Git, тікети, мерж-реквесты і все інше. На сторінці конфігурації проекту можна:
  • Вибрати використовувані фічі.
  • Встановити аватар проекту.
  • Налаштувати рівень видимості проекту: public, internal (для авторизованих користувачів) або private (тільки для членів групи).
  • Перемістити, архівувати або видалити проект.
  • Налаштувати використання Gitlab CI у проекті.
  • Додати сервіси для інтеграції проекту зі сторонніми додатками.
Важливо розуміти, що навіть якщо ви імпортуєте в GitLab тільки чистий репозиторій Git або щось, що в джерелі називається «сховище», в результаті ви завжди отримаєте проект GitLab.
Важлива відмінність: у Bitbucket проектом (project) називається об'єднання декількох репозиторіїв. Такі проекти в свою чергу належать командам (teams). В GitHub аналогічну задачу виконують організації (organizations).
У GitLab такі структури, що об'єднують кілька проектів, називаються групами (groups). Користувачі, що входять у групу, отримують доступ на читання, редагування та налаштування проектів в залежності від своєї ролі в групі. Кожен проект належить тільки одній групі, але його можна «розшарити» для інших груп. Ця фіча є в Gitlab Enterprise Edition, а також в GitLab Community Edition починаючи з версії 8.5. Якщо ви хочете явним чином заборонити расшаріваніє проектів, це можна зробити в налаштуваннях групи.
Сподіваюся, що ця стаття допомогла вам краще розібратися в термінології. Якщо у вас ще залишилися питання, задавайте їх у коментарях.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.