Производство ПО как конвеер. Что это за конвеер? Создание программного обеспечения представялет из себя несколько этапов. Рабочий процесс может отличаться от текущего, но в основном подходы отличаются очередью выполнения. Написание кода - не представляет ничего сложного: Забираем изменения из репозизтория Вносим изменения и коммитим Пуши изменения в репозиторий Публикация его в репозиторий - после того как вы его запушили в репозиторий Ваши изменения требуют мердж реквест в test ветку После того как мердж реквест пройден(изменения одобрил ведущий разрабочик) Дальше изменения переходят к пункту 3 и идут дальше. Создание образа(рамках нашего проекта это будет docker) Подготавливается образ Образ пушится в облако Тестирование образа и релиз Происходит тестирование Если тестирование успешно пройдено, то производится резил образа. Развертывание образа Запускается скрипт, который тригерит обновления окружения. Если пункт 5 завершился успешно, то теперь пункт 2 выполняется полностью для ветки master, И дальше опять пункты 3-5, только уже для производственного окружения.