Git не накладывает каких-либо подобных требований или рабочего процесса на вас.
Популярным подходом является то, что master
всегда представляет собой последний выпуск продукции и только сливается непосредственно перед выпуском, так что это так.
Другая тактика - иметь ветку release
, которая делает то же самое, что и выше.
Наконец, можно использовать теги git, обычно в сочетании с SemVer или другим подходом к версии. Это имеет смысл, когда сразу появляются разные версии, и вам нужно различать их, или нужно создавать и связывать заметки о выпуске с определенным тегом.
Аналогично вышеизложенному вы также можете использовать разные ветви разветвления для разных версий. Это полезно, если вы ожидаете, что отдельная разработка будет продолжена в этих филиалах.
Какие ветки входят в выпуск, зависит от вашего рабочего процесса.
Если у вас есть группа разработчиков, работающих с различными функциями и исправлениями, вы можете столкнуться с связью ветвей, все из которых объединены до выпуска. Например: -
- функция/а
- функции/хуг
- багфикса/1234
- багфикс/9999
В зависимости от вашего подхода QA и рабочего процесса, они будут проверены и сливаются, или сливаются и тестируются, в отделение подготовки выпуска, или прямо в мастера и освобождаются. Существует очень много подходов, которые вы можете предпринять, которые зависят от размера и характера вашей команды, насколько гибки вы должны быть и т. Д.
Я думаю, это может быть сведено до «зависит от хаха». Но я думаю, что это дает хороший обзор того, что обычно происходит @bcmcfc – Jshee