Порядок работы с корпоративным GitLab репозиторием Для корректного процесса CI/CD, структуризации и прослеживаемости разработки для всех кодовых репозиториев разрабатываемых проектов применяется следующий набор правил: Все проекты должны быть группированы по принципу <подсистема/мастер проект>[/подпроект]/ или <подсистема/мастер проект>/подпроект , например: cok/lms/backend или cok/video-store Все проекты имеют три обязательные ветки: main (по умолчанию), stage и production . Ветка main используется для сборки ПО в репозиторий testing Ветка stage используется для сборки ПО в репозиторий staging Ветка production используется для сборки ПО в репозиторий stable Все три обязательных ветки являются защищенными ( protected ) ветками репозитория. Прямая фиксация изменений ( Push ) в эти ветки разрешена только мейтнерам (владельцам) проекта. Запрос на слияние ( Merge request ) другим разработчикам разрешен только в ветку main . Репозиторий может содержать дополнительные служебные ветки имеющие формат именования stand/ . Такие ветки используются для автоматической сборки и развертывания стенда в среде Kubernetes. По окончанию сборки, разработчику осуществляющему фиксацию изменений отправляется сообщение с адресом стенда или ошибкой сборки контейнера на электронную почту, указанную в свойствах профиля GitLab , как Private Email . Репозиторий может содержать иные ветки с наименованием разрабатываемого функционала. Наименование должно состоять из 1-2 слов на английском языке, разделенных символом тире . Каждая фиксация изменений должна сопровождаться комментарием со сведениями о вносимом изменении. Если изменения не значительны, проводятся только для форматирования кода или для запуска процесса сборки стенда, допускается указывать прочерк (символ тире ) в качестве текста комментария. Комментарии, за исключением служебных, попадают в журнал изменений проекта (changelog). Если требуется провести очистку базы данных и постоянных томов стенда, используется слияние изменений с ключевым словом CleanStand в качестве значения комментария.