Как вы храните изменения отдельно и в разных средах развертывания в git?

На моем рабочем месте мы пытаемся разработать рабочий процесс, основанный на Git, для обработки наших развертываний и изменений в коде.

У нас есть веб-приложение Java EE и 3 среды развертывания (Test, QA и Production). У нас также есть экземпляр Jenkins CI для обработки сборок и развертываний.

Когда в приложение вносятся изменения »В коде (в ветках) нам нужно иметь возможность выбирать, какие из них будут повышены до QA и Production. Некоторые могут попасть в QA, а затем никогда не пойдут в производство.

Мы также должны быть невосприимчивы к случайному включению всех остальных »s код в вашей ветке при продвижении и слиянии.

"продвижение" ветвей также необходимо автоматизировать - таким образом, чтобы аналитик выбрал ветку или набор изменений, а затем jenkins или какой-либо другой скрипт выполнил бы фактическое слияние и развертывание. Я вижу конфликты слияний, являющиеся проблемой здесь ...

Как бы вы порекомендовали настроить (а) Git-репозиторий (-ы) для удовлетворения этих требований?

Ответы на вопрос(1)

Ваш ответ на вопрос