Мы пытаемся построить платформу.Вокруг около 30 сервисов (UI, WcF, Rest, Api, планировщик и т. Д.).После многих дней разработки, наконец, мы выходим из дома.Но мы хотим тщательно контролировать версии.Настало время найти правильный способ сделать это.
Теперь у нас есть простая структура папок в SVN, как показано ниже
svn:
- ветви
- 1.0.0
- FrontEnds
- Service1
- Service1
Существуют конвейеры CD / CI с TeamCity и Octopus.После того, как мы закончили первый этап разработки, мы собираемся развернуть его в среде пользовательского тестирования (UAT), и каждая служба использует один и тот же номер версии.
Но у нас есть много идей для работы.Мы хотели бы создать новую ветку под названием 1.0.1 и начать разработку.
Предположим, мы создаем нашу новую ветку 1.0.1 и начинаем внедрять новые улучшения.Между тем из UAT обнаружена ошибка.Конечно, нам нужно внедрить исправление в новую ветку.Как лучше всего справиться с этой ситуацией.
Может ли это вызвать проблемы при использовании одного и того же номера версии для каждой службы?
Мы можем воспользоваться только конкретными услугами, покасоздание новой ветки, настройка Teamcity для них и развертывание определенных пакетов через Octopus.
Мы можем перенести платформу в новую ветку, внести небольшие изменения в Teamcity (адрес svn и т. д.)и развернуть определенные пакеты через осьминога.Но он снова построит дырочную платформу в Teamcity по любой причине.
Огромный беспорядок, и я так запутался.