Я ищу хороший способ управления развертыванием в тестовой среде нескольких ветвей одной и той же базы кода. Моя установка включает в себя основную ветвь и несколько ветвей Dev:TFS - Развертывание тестовых версий разных ветвей
- Главная
- Dev1 (функция набора 1)
- DEV2 (функция установки 2)
- и т.д ...
Все они являются частью непрерывного процесса интеграции, когда они ежедневно развертываются для тестирования. На данный момент существует конфигурация «Тестирование» с соответствующим преобразованием трансформации и публикации Web.config, которые управляют такими вещами, как строки подключения (Web.config) и местоположение для развертывания приложения (конфигурация MSDeploy в профиле публикации).
Все работало нормально, пока не началось слияние. Как только мы начинаем слияние кода, различные преобразования Web.config и публикации профилей неизбежно смешиваются, а Visual Studio с радостью объединяет все, не обнаруживая конфликтов, приводя к тому, что такие ситуации, как ветвь Main, развертывается в местоположении Dev1, или приложение Dev2, настроенное с строкой подключения Main.
Я могу придумать одно решение, которое создает конфигурацию решения для каждой ветви и соответствующие преобразования Web.config и публиковать профили. Это, безусловно, будет делать все, чтобы отделить все проблемы и проблемы от слияния, но создает множество новых конфигурационных файлов повсюду. И вдобавок к этому задача создания или удаления ветки намного сложнее.
Есть ли другой способ сделать это?
Я рекомендовал бы вам переместить ваше мышление от продвижения коды к двоичному продвижения. –