How does VCS labelling work on SVN?

Does TeamCity implement "VCS labelling" by creating a copy into branches/ or tags/ ? I have labelling checked on but I'm not sure how it is being applied to my svn repository?

Edited by: Vincent Storm on Oct 13, 2008 2:16 PM

Comment actions Permalink

I've just tried to use VCS labeling and unfortunately I cannot make it working.
My repository has svn repository path


and I want to create tags in


the URL I check out is svn://...../components/sdk/trunk => sdk

I tried many labeling rules, like
../trunk=>../tags, etc. but nothing works,
TC says something like

Failed: Failed to set label 'last-compilable': Labeling the path 'components/sdk/trunk/trunk' to 'components/sdk/trunk/tags/last-compilable' has failed with the error: svn: Path trunk does not exist in revision 12710

well.. it seems that TC ignores my rules.
Am I doing something wrong?

Comment actions Permalink

I've tried TC 4.0 EAP and I get a different error message

Labeling process failed: Include rules with empty left part are not allowed in labeling rules

although the rule looks fine to me: /components/sdk/trunk=>/components/sdk/tags
(svn url also ends with /components/sdk/trunk)
so basically I want to tag contents of all trunk

Does labeling work at all?
Is it possible to use the same label name, like "latest-compilable" (svn)?

Comment actions Permalink


Could you please note:
- the URL you have in the Subversion VCS root
- the URL of the SVN repository root (the topmost directory in the repository)

Note the difference between the paths starting with "/" and not starting with it (it is noted in the note on UI and in the documentation). You should probably use something like:

Is it possible to use the same label name, like "latest-compilable" (svn)?

Not at the moment. Please vote/watch the corresponding issue:

Comment actions Permalink


Yes, TeamCity makes a copy according to the labeling rules defined for the SVN root.

AFAIK copy in Subversion is rather light operation with no actual data cloning.

Comment actions Permalink

Not sure if I'm asking the same question as Igor but is it possible to trigger a build based on a label like VER_1_RC ?
What I am trying to accomplish is to have anything in the branches/ ( or tags/ ) directory that has _RC in the name to trigger a build.

Comment actions Permalink


You can configure a VCS root to get sources form a label (at least for SVN).
You can also set VCS triggering rules to trigger a build only if a change occurred in a directory matching specific pattern.
However, TeamCity does not support changing VCS root settings - they can only be set by a user. We have s feature request to allow using references in the VCS root, but I doubt this can help in the case you describe.


Please sign in to leave a comment.