У нас есть две основные ветви:Как слить ветку освобождения назад освоить
master
Обновлены разработчикамиrelease
Обновленные ХИ. Разработчики не нажимают на эту ветку.
Нашей автоматизированная непрерывная интеграция как это работает:
- CI принимает самую последнюю версию филиала выпуска
- строит систему
- интегрирует последний код от главного отделения (без толчка)
- выполняет все тесты
- , если все тесты хороши: номер версии обновляется, и филиал выпуска обновляется.
Это есть одна проблема:
Номер версии в мастер не получает приращение.
Если бы мы делали это, был бы бесконечный цикл, так как CI думает:
ах, новые изменения на мастере (он не видит, что это только обновление номера версии). Давайте проверим код ....
Как получить изменения от CI назад к мастеру?
Мы хотим избежать слияния, когда все CI совершают попадание в мастера. На часто обновляемых репозиториях ежедневно будет CI. Результатом будет то, что в истории git слишком много CI-коммитов. С «слишком многими» я имею в виду «слишком много» для человеческого глаза.
Update
Мы делаем "непрерывной интеграции". Дважды в день программное обеспечение тестируется. Если он стабилен, номер версии увеличивается. В нашем контексте нет «дня выпуска».
У нас есть ветви развития/особенности. Но я думаю, что это не вопрос. Слияние с мастером осуществляется разработчиком. Это не автоматизировано.
Увеличивается ли количество версий с помощью фактической фиксации на базе кода или в некоторых метаданных, хранящихся в других местах? –