【发布时间】:2018-04-14 05:10:02
【问题描述】:
我已经在 VSTS 中使用 GitFlow 存储库配置了我的 git 存储库。
我有一个带有 dotnet 核心项目的主分支和一个名为“Release/1.0.0”的发布分支。当我创建拉取请求并将 release/1.0.0 分支合并回 master 时,它不会将其版本号增加到 1.0.0。相反,它将版本号从 0.1.0(基本后备)增加到 0.1.1。
构建日志:
Calculating base versions
Fallback base version: 0.1.0 with commit count source xx
Git tag '0.1.0': 0.1.0 with commit count source xx
Base version used: Git tag '0.1.0': 0.1.0 with commit count source xx
但是,提交标签是 Merge branch Release/1.0.0 to master。并且被合并的分支被标记为 1.0.0。
我正在使用 GitVersion 默认设置。我正在使用 GitVersion VSTS 任务。
这是 gitversion 配置:
assembly-versioning-scheme: MajorMinorPatch
mode: ContinuousDelivery
branches: {}
ignore:
sha: []
我应该怎么做才能自动将master分支的版本设置为正在合并的版本号?
更新: 我发现出了什么“问题”。
版本被合并为拉取请求。这会将提交消息设置为 Merge PR #### 。但是,gitversion 的 MergeMessageBaseVersionStrategy 无法处理这个问题。如果我将版本合并为常规合并,则版本号会增加。
【问题讨论】:
-
是否触发构建以进行 PR 验证?您能否在构建定义中设置 GitVersion.yml 文件和 GitVersion 任务设置?
-
master分支有一个政策,就是完成PR后才能添加代码。完成后触发构建。我添加了 gitversion 配置
-
您可以在完成拉取请求之前删除生成的“Merged PR...”前缀。
标签: azure-pipelines gitversion