2009-12-30 82 views
3

我試圖標籤,該標籤作出這樣多次籤的構建:TeamCity的顛覆標籤

+Root
+-trunk
+--Folder1
+--Folder2
+-Tags
+--ProjectA
+---Build-123
+----Folder1
+----Folder2

其中123內建123是內部版本號。

我試圖通過使用下面的標籤規則來實現這一目標:

/Root/trunk/Folder1=>/Root/tags/ProjectA
/Root/trunk/Folder2=>/Root/tags/ProjectA

而這個標籤模式:

BUILD-%system.build.number%

我希望TeamCity的會讓人產生BUILD-123標籤和將Folder1和Folder2的內容複製到其中。不過,我得到以下錯誤:

Failed: Failed to set label 'BUILD-123': Svn labeling failed: Cannot copy 'Root/trunk/Folder1', 'Root/trunk/Folder2' to the same directory 'Root/tags/ProjectA/CO-BUILD-123'

我使用的TeamCity 5使用Subversion 1.6

回答

0

這似乎是SV​​N側的限制。我找到的唯一解決方案是直接調用SVN創建目標文件夾(mkdir),然後使用svnCopy將每個源複製到該文件夾​​中。

0

請閱讀TeamCity's docs這個話題:

我想你需要一個像

/Root/trunk=>/Root/Tags/ProjectA 

/trunk=>/Tags/ProjectA 

規則根據您存儲庫根。

0

看來,我們需要有標籤的規則,如

trunk => tags  # the trunk contains the root of my project 
branches/*/ => tags # a branch usually contains the a copy of the root of the project 
tags/*/ => tags  # a tag usually contains the a copy of the root of the project 

這將使(重新)標籤分支和標籤不明確設置他們的名字。 不幸的是TeamCity沒有這樣的通用規則