Как использовать поток git с промежуточной средой?
Мы используем git -flow для обработки исправлений и функций с помощью ветки разработки и главной ветки (для производства).
Каков самый простой способ добавить промежуточную ветку в микс, чтобы мы могли проверить работу, которая находится на пути к ее разработке, сохраняя при этом полезность git -flow?
Ответы
Ответ 1
Я бы сказал, что постановка должна основываться на ветки освобождения потока git. После git flow release start
и git flow release publish
вы можете начать работу QA в этой ветке, включая публикацию ее в промежуточной области. Когда QA работает в промежуточной зоне, он доказал, что код готов к выпуску продукции для установки/установки на производстве и git flow release finish
.
Если вы используете TeamCity, вы можете легко настроить сервер для обнаружения новых ветвей удаленной версии и автоматически настроить для них сборки, см. здесь.
Ответ 2
Я только начал использовать поток git, но IMHO самым простым способом является установка следующей версии в качестве dev
ветвей и выпусков выпуска как ветвь stage
, а затем, например: слияние вручную с ветвью master
(ваш реальный производство).
Итак, если вы отпустите версию 1.2.0 до stage
, а затем найдете ошибки в своем выпуске (4 исправления, например: в основной CMS, feature1, feature3 и feature4), вы всегда можете применять исправления, чтобы, например, вы могли закончить с версией 1.2.4, а затем, наконец, объединить его с производством.
UPDATE: этот сценарий предполагает, что у вас нет механизма отката, поэтому вы всегда добавляете фиксации, чтобы исправить, отпустить функцию или что-то еще. Если у вас есть механизм отката, вам не нужно беспокоиться о своих ошибках в вашей продукции. Просто, когда вы обнаружите ошибку, используйте откаты для настройки предыдущей рабочей версии. Например: если вы нашли ошибку в версии 1.2.3
, вернитесь к версии 1.2.2
. Исправьте ошибку, проверьте на dev
, затем на stage
и нажмите на производство как versioin 1.2.4
. Таким образом, ваше производство будет прыгать с 1.2.2
прямо на 1.2.4
.