Проекты TeamCity и несколько ветвей SVN - PullRequest
6 голосов
/ 21 мая 2009

В целях поддержания чистоты и готовности моего SVN-канала к развертыванию я использовал следующую модель управления исходным кодом . Для нетерпеливых основная концепция заключается в том, что вы создаете ветки разработки для реальной разработки и оставляете ствол чистым и готовым к развертыванию в любое время (без мусора в стволе).

В дополнение к этому я настраиваю TeamCity для непрерывной интеграции. В TeamCity я хотел бы убедиться, что все ветви разработки, а также ветка, готовая к развертыванию (в моем случае это магистраль), собраны правильно и проходят все модульные тесты.

Это может быть глупый вопрос, но я не слишком хорошо знаком с TeamCity. Должен ли я создать новый проект TeamCity для каждой ветви? В частности, в ветви, готовой к развертыванию, есть несколько дополнительных правил, чем в ветви разработки. Например, выпуски следует сохранять в каталогах с версиями в файловой системе (например, C: \ Projects \ MyProject \ 1.0.187 ..., C: \ Projects \ MyProject \ 1.0.188 ...), чтобы обеспечить легкий доступ к двоичные файлы, в любой момент времени. С другой стороны, сохранение версированных копий сборок в ветках разработки не является необходимым и приведет к потере места на жестком диске.

В TeamCity я бы предпочел видеть только один проект для каждого программного проекта. Другими словами, если моя компания работает над X количеством проектов разработки, я бы предпочел, чтобы этот проект был указан только один раз, а не X * 2 (при условии, что у каждого проекта есть только две ветви).

Ответы [ 2 ]

6 голосов
/ 21 мая 2009

Вам нужно создать только один проект, но вам потребуется несколько конфигураций сборки - по 1 для каждой ветви. Насколько я знаю, вы не можете настроить имя папки артефакта на диске (это число с автоматическим увеличением), однако вы можете загрузить все артефакты в виде zip-файла в TeamCity 4.5 из пользовательского интерфейса. Также в TeamCity включен планировщик, который позволяет очищать артефакты, чтобы они не занимали слишком много места на диске.

1 голос
/ 02 января 2019

TeamCity 2018.1.5

enter image description here

TeamCity не поддерживает множественные ветви для SVN, как и для GIT - поэтому я решил эту проблему с помощью Параметр конфигурации - где я устанавливаю активную ветку, из которой мне нужно построить, и после этого могу легко переключиться на другую ветку запустив пользовательскую сборку или изменив этот параметр конфигурации. enter image description here

После необходимости просто настраивает триггеры, чтобы начать сборку из определенной ветви:

enter image description here

Так что на стороне проекта вы можете увидеть различные ветви enter image description here

И легко переключаться между ветками, запустив Custom Build и меняя там ветку:

enter image description here

...