Teamcity 多个VCS触发器具有不同的;每次签入触发“;对于不同的分支

Teamcity 多个VCS触发器具有不同的;每次签入触发“;对于不同的分支,teamcity,teamcity-9.1,Teamcity,Teamcity 9.1,我需要两个VCS触发器,基于banch过滤器,每个签入触发规则不同 原因:对于“release-*”和“master”分支,当我在中合并所有内容时,我不希望每次签入都创建一个构建,但是当使用任何其他分支时我会这样做。我想我可以通过添加第二个触发器来过滤分支,使它们看起来像这样: <build-triggers> <build-trigger id="vcsTrigger" type="vcsTrigger"> <parameters>

我需要两个VCS触发器,基于banch过滤器,每个签入触发规则不同

原因:对于“release-*”和“master”分支,当我在中合并所有内容时,我不希望每次签入都创建一个构建,但是当使用任何其他分支时我会这样做。我想我可以通过添加第二个触发器来过滤分支,使它们看起来像这样:

<build-triggers>
      <build-trigger id="vcsTrigger" type="vcsTrigger">
        <parameters>
          <param name="branchFilter"><![CDATA[-:*
+:refs/heads/hotfix/hotfix-*
+:refs/heads/develop
+:refs/heads/feature/feature-*]]></param>
          <param name="groupCheckinsByCommitter" value="true" />
          <param name="perCheckinTriggering" value="true" />
          <param name="quietPeriodMode" value="DO_NOT_USE" />
        </parameters>
      </build-trigger>
      <build-trigger id="vcsTrigger1" type="vcsTrigger">
        <parameters>
          <param name="branchFilter"><![CDATA[-:*
+:refs/heads/release/release-*
+:refs/heads/master]]></param>
          <param name="quietPeriodMode" value="DO_NOT_USE" />
        </parameters>
      </build-trigger>
    </build-triggers>
第一个VCS触发器,将在选中“在每个签入时触发构建”的情况下构建所有这些分支

第二个VCS触发器,它将生成所有这些分支,并取消选中“在每个签入时触发生成”

-:*
+:refs/heads/release/release-*
+:refs/heads/master

(请原谅我的绘画技巧不那么高超)

还有别的办法吗

谢谢


Steve

我找不到如何在单个构建配置上添加2个VCS触发器,您尝试过吗


虽然我使用的是TC 10,但如果这真的不起作用,那么我唯一能想到的方法就是创建两个独立的版本|

解决方案是修改构建配置XML。步骤是: 找到您的TeamCity项目文件夹,它是TeamCity数据目录的子目录,我的文件夹是C:\ApplicationData\TeamCity\config\projects

查找每个项目子文件夹所在的生成配置,例如:C:\ApplicationData\TeamCity\config\projects\parentProj\u Proj\buildTypes\build\u config\u name.xml

在这个文件的底部是我找到build triggers部分的地方,在那里找到当前的build trigger您有一个重复的它,但是记住更改“build trigger”元素的“id”属性。因此,我的最终配置如下所示:

<build-triggers>
      <build-trigger id="vcsTrigger" type="vcsTrigger">
        <parameters>
          <param name="branchFilter"><![CDATA[-:*
+:refs/heads/hotfix/hotfix-*
+:refs/heads/develop
+:refs/heads/feature/feature-*]]></param>
          <param name="groupCheckinsByCommitter" value="true" />
          <param name="perCheckinTriggering" value="true" />
          <param name="quietPeriodMode" value="DO_NOT_USE" />
        </parameters>
      </build-trigger>
      <build-trigger id="vcsTrigger1" type="vcsTrigger">
        <parameters>
          <param name="branchFilter"><![CDATA[-:*
+:refs/heads/release/release-*
+:refs/heads/master]]></param>
          <param name="quietPeriodMode" value="DO_NOT_USE" />
        </parameters>
      </build-trigger>
    </build-triggers>


这虽然可能不受支持,但似乎效果很好。

我已经厌倦了添加多个,但它不允许我这样做。我想知道导出构建编辑xml然后重新导入是否会有所帮助