我已阅读S.O.中的所有TeamCity,SVN和标签问题。但没有接缝适用于我的具体问题。TeamCity - SVN和标签:如何正确地做到这一点?
在这里,我们对SVN以下结构:
svn://server/root
/projectA
/trunk
/tags
/projectB
/trunk
/tags
在我配置了SVN根为项目像这样的TeamCity:
svn://server/root/ProjectA/trunk
而构建过程工程像一个魅力。
但是现在我想添加标签,但即使设置标签规则的文档,或任何其他设置我所知道的,在指定为我的最新尝试:
/ProjectA/trunk=>/ProjectA/tags
我得到以下错误:
jetbrains.buildServer.vcs.VcsException: Labeling the path 'ProjectA/trunk' to 'ProjectA/tags/build-24' has failed with the error: svn: CHECKOUT of '/svn/root/!svn/ver/5792/ProjectA/tags': 403 Forbidden (https://server:8443)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.throwLabelingError(SvnSupport.java:430)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.label(SvnSupport.java:418)
at jetbrains.buildServer.vcs.impl.VcsLabeler.setLabel(VcsLabeler.java:45)
at jetbrains.buildServer.vcs.impl.VcsLabeler.access$400(VcsLabeler.java:64)
at jetbrains.buildServer.vcs.impl.VcsLabeler$3$1.run(VcsLabeler.java:4)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.tmatesoft.svn.core.SVNAuthenticationException: svn: CHECKOUT of '/svn/root/!svn/ver/5792/ProjectA/tags': 403 Forbidden (https://server:8443)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:62)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:623)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:274)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:262)
at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doCheckout(DAVConnection.java:452)
at org.tmatesoft.svn.core.internal.io.dav.DAVCommitEditor.checkoutResource(DAVCommitEditor.java:468)
at org.tmatesoft.svn.core.internal.io.dav.DAVCommitEditor.addDir(DAVCommitEditor.java:136)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnCopyHelper$CopyCommitPathHandler.handleCommitPath(SvnCopyHelper.java:138)
at org.tmatesoft.svn.core.internal.wc.SVNCommitUtil.driveCommitEditor(SVNCommitUtil.java:139)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnCopyHelper.doCopy(SvnCopyHelper.java:102)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnConnection.label(SvnConnection.java:861)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.label(SvnSupport.java:416)
有没有人有任何理由为什么会发生这种情况,或者我该如何正确设置?
及时:访问SVN的用户正确地执行签出,因为TeamCity被配置为在每次构建之前清理签出文件夹。
你真的需要标签吗?没有svn修订版删除标签的需要?尤其是当编译no〜=修订号时? – 2011-03-27 15:10:32
@James这里的关键是我们有不同的构建配置,其中一个我们用于发布到生产环境,因此,标记SVN对我们来说非常重要。 – 2011-03-27 21:56:35