【问题标题】:TeamCity Subversion labellingTeamCity Subversion 标签
【发布时间】:2010-12-31 03:52:03
【问题描述】:

我正在尝试标记由多个签出组成的构建,如下所示:

+根
+-主干
+--文件夹1
+--文件夹2
+-标签
+--项目A
+---Build-123
+----文件夹1
+----文件夹2

其中 Build-123 中的 123 是内部版本号。

我正在尝试通过使用以下标签规则来实现这一点:

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

还有这个标签模式:

BUILD-%system.build.number%

我希望 TeamCity 会创建 BUILD-123 标记并将 Folder1 和 Folder2 的内容复制到其中。但是我收到以下错误:

失败:设置标签“BUILD-123”失败:Svn 标签失败:无法将“Root/trunk/Folder1”、“Root/trunk/Folder2”复制到同一目录“Root/tags/ProjectA/CO-BUILD” -123'

我正在使用带有 Subversion 1.6 的 TeamCity 5

【问题讨论】:

    标签: teamcity


    【解决方案1】:

    关于这个话题请阅读TeamCity's docs

    我想你需要像这样的规则

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

    /trunk=>/Tags/ProjectA
    

    取决于您的存储库根目录。

    【讨论】:

      【解决方案2】:

      看来我们需要有这样的标签规则

      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 没有这样的通用规则

      【讨论】:

        【解决方案3】:

        这似乎是 SVN 方面的限制。我找到的唯一解决方案是直接调用 SVN 以首先创建目标文件夹(mkdir),然后使用 svnCopy 将每个源复制到该文件夹​​中。

        【讨论】:

          猜你喜欢
          • 2011-03-08
          • 2015-06-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-03-22
          • 2011-08-24
          • 1970-01-01
          • 2011-01-18
          相关资源
          最近更新 更多