svntagslabelteamcity-5.0

TeamCity - SVN and Labelling


I'm about to start using the labeling feature of TC (Great product :)) and have a question:

I have 1 root VCS: svn:\someserver\MyRepo

With label rule: trunk=>tags

And in all my projects I use checkout rules to only checkout the needed projects like so:

Prj1 - Conf1: +:MyPrj1/trunk => /

Prj2 - Conf1: +:MyPrj2/trunk => /

Prj3 - Conf1: +:MyPrjCollection/MySubPrj1/trunk => /

... you get the picture

What will then happen if I set auto label on each successfull build on ex. Prj1 - Conf1?

A. Will my trunk simply be label into MyPrj1/tags/LabelName, as i'm hoping for?

B. Or will the entire root VCS be labeled (MyRepo\tags\Label) or something worse?

Can anyone help me? :)

Kind regards Garrett


Solution

  • If I read VCS Labeling (TC6) correctly, Labeling rules are specified as newline-delimited rules each using the following format:

    TrunkOrBranchRepositoryPath => tagDirectoryRepositoryPath
    

    So instead of having a generic label rule trunk=>tags, why not having labeling rules like:

    /MyPrj1/trunk=>/MyPrj1/tags
    /MyPrj2/trunk=>/MyPrj2/tags
    /MyPrjCollection/MySubPrj1/trunk=>/MyPrjCollection/MySubPrj1/tags
    

    That way, you would be sure of the resulting tree structure.