TeamCity + GitHub(每个分支构建配置)
TeamCity + GitHub (Build Config per branch)
TeamCity 设置:
项目(中心项目)
- 构建配置(主分支)
- 构建配置(开发分支)
VCS(GitHub) 设置(回购:CenterProj):
- 主分支
- 开发分支
站点设置:
- dev.centerproj(与dev分支相关)
- qa.centerproj(master分支相关)
我还没有弄清楚如何让 1 个 VCS Root 连接到 CenterProj Repo,然后触发基于 commit/merge 的 2 个构建配置到它们的各个分支。
- 示例:将代码提交到 Dev 分支,TC 触发 Build Configuration(Dev) 并输出到 dev.x。我认为将提交合并到 Master,然后它会触发 Build Configuration(Master) 到 qa.x.
到目前为止,当我 commit/merge 进入开发阶段时,我会持续 "Pending" 构建等待开发人员,或者当我 commit/merge 进入开发阶段时,我正在等待开发人员进行构建。
建议?
您需要为每个构建配置指定一个触发规则,并在其中限制哪个分支将触发您的构建。至于 "Pending" 更改,它们将出现在两个构建配置之上,因为您共享相同的 VSC 根目录,无需担心。
- 在第一个屏幕截图中,您的 VSC 配置中,将您的分支规范设置为“+:refs/heads/*”
- 在第二个屏幕截图中,您已经在 "Branch Filter," 中有一个值,只需将其设置为“+:dev”
- 在最后一个屏幕截图中,将 "Branch Filter" 设置为“+:master”
TeamCity 设置:
项目(中心项目)
- 构建配置(主分支)
- 构建配置(开发分支)
VCS(GitHub) 设置(回购:CenterProj):
- 主分支
- 开发分支
站点设置:
- dev.centerproj(与dev分支相关)
- qa.centerproj(master分支相关)
我还没有弄清楚如何让 1 个 VCS Root 连接到 CenterProj Repo,然后触发基于 commit/merge 的 2 个构建配置到它们的各个分支。
- 示例:将代码提交到 Dev 分支,TC 触发 Build Configuration(Dev) 并输出到 dev.x。我认为将提交合并到 Master,然后它会触发 Build Configuration(Master) 到 qa.x.
到目前为止,当我 commit/merge 进入开发阶段时,我会持续 "Pending" 构建等待开发人员,或者当我 commit/merge 进入开发阶段时,我正在等待开发人员进行构建。
建议?
您需要为每个构建配置指定一个触发规则,并在其中限制哪个分支将触发您的构建。至于 "Pending" 更改,它们将出现在两个构建配置之上,因为您共享相同的 VSC 根目录,无需担心。
- 在第一个屏幕截图中,您的 VSC 配置中,将您的分支规范设置为“+:refs/heads/*”
- 在第二个屏幕截图中,您已经在 "Branch Filter," 中有一个值,只需将其设置为“+:dev”
- 在最后一个屏幕截图中,将 "Branch Filter" 设置为“+:master”