Получить версию svn подпапки в TeamCity

У нас здесь странный способ использования репозиториев (и, боюсь, у меня мало контроля над этим), где корневое репо содержит несколько проектов... никаких причудливых вещей, таких как папка trunk/tags/branchs... (я' м так грустно).

Так, например, структура выглядит так:

http://my.svn.root/main
                      |-- /Project1
                      |-- /Project2
                      ...

и так далее...

Теперь, выполнив svn log для папок, я получу номер последней версии в этой папке. Проблема в том, что TeamCity, похоже, выполняет svn info в корне, поэтому даже если я укажу корень VCS следующим образом:

http://my.svn.root/main/Project1

свойство %build.vcs.number%, кажется, выбрано из корня main репо, поэтому фиксация в Project2 фактически продвинет это число (а это не то, что мне бы хотелось).

Есть ли способ указать TeamCity использовать номер последней фиксации подпапки, а не корневую версию? или другое свойство, которое делает именно это?

Спасибо!


person Tallmaris    schedule 28.05.2013    source источник


Ответы (1)


Хм, видимо это все из-за настроек рута VCS. По сути, лучшим вариантом было бы настроить root на основной, а затем отредактировать правила оформления заказа:

VCS root: http://my.svn.root/main

checkout rules: +:Project1=>.

Это кажется намного более стабильным, а также более отзывчивым с точки зрения запуска сборки.

person Tallmaris    schedule 28.05.2013
comment
Это отличный совет. Его следует включить на страницу рекомендаций TeamCity. - person David White; 28.06.2013
comment
По-прежнему не работает в TeamCity 8 (( . он возвращает значение самой последней версии независимо от того, какую ветку вы выполняете. - person dollar2048; 16.02.2015