Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何使TeamCity仅为默认分支部署构建?_.net_Github_Teamcity 8.0 - Fatal编程技术网

.net 如何使TeamCity仅为默认分支部署构建?

.net 如何使TeamCity仅为默认分支部署构建?,.net,github,teamcity-8.0,.net,Github,Teamcity 8.0,我们的TeamCity流程基本上包括3个按顺序运行的“构建配置”: 构建步骤,由源代码控制触发(在我们的例子中是GitHub):MSBuild构建所有内容,并创建一个包含所有单元测试二进制文件的工件和几个部署包工件,在VisualStudio解决方案中每个网站一个 单元测试步骤,由步骤1的成功触发。这将获取单元测试二进制文件工件并运行单元测试 部署步骤,由步骤2的成功触发。它们各自提取相关的部署包工件并部署它们 我最近修改了步骤1,从GitHub上的Pull请求分支中获取更改,以便可以使用构建结

我们的TeamCity流程基本上包括3个按顺序运行的“构建配置”:

  • 构建步骤,由源代码控制触发(在我们的例子中是GitHub):MSBuild构建所有内容,并创建一个包含所有单元测试二进制文件的工件和几个部署包工件,在VisualStudio解决方案中每个网站一个
  • 单元测试步骤,由步骤1的成功触发。这将获取单元测试二进制文件工件并运行单元测试
  • 部署步骤,由步骤2的成功触发。它们各自提取相关的部署包工件并部署它们
  • 我最近修改了步骤1,从GitHub上的Pull请求分支中获取更改,以便可以使用构建结果更新Pull请求。我还想为每个Pull请求运行单元测试,但显然在这些情况下不进行任何部署

    因此,步骤1有一个分支过滤器来匹配默认分支或请求分支。我可以在步骤2中更新触发器,使其也具有这个分支过滤器。但是,部署步骤中的触发器没有分支筛选器选项


    我怎样才能只为默认分支的构建运行部署步骤?

    我的解决方案是只为拉请求创建一个新的构建配置;这包含编译和运行单元测试的构建步骤。

    我的解决方案是只为拉请求创建一个新的构建配置;这包含编译和运行单元测试的构建步骤