如果没有首先构建新创建的发布分支,GitVersion不会碰到TeamCity中的开发分支构建的次要版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果没有首先构建新创建的发布分支,GitVersion不会碰到TeamCity中的开发分支构建的次要版本相关的知识,希望对你有一定的参考价值。

我目前正在尝试在GitFlow测试项目中实现GitLab,然后从TeamCity运行构建。

我已经配置了我的GitVersion.yml文件,以便当我从开发版本0.3.0-alpha.3创建一个发布分支(例如release / 0.3.0)然后提交开发时,开发的次要版本应该增加(例如0.4 0.0-alpha.1)。但是当我在TeamCity上构建开发时,它获得版本0.3.0-alpha.4而我需要先构建发布分支,然后重建develop以获得正确的版本0.4.0-alpha.1。

有没有办法让GitVersion在TeamCity中计算开发分支构建的正确版本而无需首先构建发布分支?我想避免开发人员构建开发的可能性,并将包含错误版本的软件包推送到Octopus服务器。

软件版本:

  • TeamCity:2017.2.4(build 51228)&2018.1(build 58245)
  • Gitvision:v.0.0-beta0012
答案

我已经确认问题是TeamCity在创建工作副本时没有从存储库中获取所有分支。这导致我的GitVersion配置出现问题,该配置要求分支从另一个分支派生其版本信息。

简单的解决方案是在项目中添加名为teamcity.git.fetchAllHeads的配置参数,其值为true。这会强制TeamCity从您的存储库中获取所有分支。

以上是关于如果没有首先构建新创建的发布分支,GitVersion不会碰到TeamCity中的开发分支构建的次要版本的主要内容,如果未能解决你的问题,请参考以下文章

詹金斯 - 如果开始新的构建,则中止运行构建

创建新分支时运行任务

创建没有本地提交的新分支

Xcode 服务:选择 Git 分支

git 创建空的分支

Bamboo - 创建新分支时自动创建部署触发器