[英]Git pull request branch name in teamcity
参数teamcity.build.branch是一个逻辑分支,即它是与*匹配的分支规范的分支的一部分。
还有另一个参数teamcity.build.vcs.branch。<VCS root ID> ,其中包含完整的Git分支名称。 似乎这就是你需要的。
您可以在文档中阅读更多相关内容: http : //confluence.jetbrains.com/display/TCD8/Predefined+Build+Parameters#PredefinedBuildParameters-BranchRelatedParameters
我不确定TeamCity中是否有类似于SYSTEM_PULLREQUEST_SOURCEBRANCH
内容,但是您可以使用“逻辑分支名称”代替? 在TC中,这直接对应于您可能已在VCS根目录 - > 分支规范中添加的*
占位符匹配的子字符串。
警告:一些文章建议你有一个额外的分支规范。 喜欢+:refs/pull/*/head
和+:refs/pull/*/merge
。 其结果是:如果“42”恰好是Pull Request id,则完整的ref名称将为refs/pull/42/head
,因此TeamCity将匹配并仅显示42
作为(逻辑)分支名称。合并分支和合并结果的构建。
解决此问题的一种方法是使星号匹配(PR)引用名称的足够长的子字符串对您有意义。 另一个是使用括号来包含更多的ref。 您的要求将取决于您的分支命名约定。
例:
默认分支:
refs/heads/develop
分支规格 :
+:refs/(pull/*/merge) +:refs/heads/*
...将显示分支,如pull/42/merge
, master
, hotfix/1.2.3
等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.