GitVersion 的 +semver 命令如何工作?
How does GitVersion's +semver command work?
我正在尝试使用 GitVersion's +semver:patch
命令增加我的补丁版本号,但它没有按我预期的方式工作。
我的 master 分支上有一个标签“2.2.0”。我在 develop 分支上做了以下承诺:
b5d9f141 (HEAD -> develop, origin/develop) +semver:patch
75122489 Added unit test. +semver:patch
3b4e7eef (tag: 2.2.0, origin/master, master) Merge branch 'release/2.2.0'
我正在关注 GitFlow。在最近两次提交之后,我希望我的版本报告为 2.3.2,但 GitVersion 仍将其报告为 2.3.0。
"MajorMinorPatch":"2.3.0"
+semver
是如何工作的,有没有什么方法可以按照我想要的方式(即没有手动标记)仅使用提交消息来增加活动版本号?
Git 版本由
- 查找最新的"base version,"然后
- 找到最重要的增量(即主要、次要、补丁)。
就我而言,基本版本取自最新的标签 2.2.0。我的 +semver:patch
消息被视为 (2) 的一部分,但默认情况下开发分支配置为增加次要版本:
branches:
develop:
mode: ContinuousDeployment
tag: alpha
increment: Minor
GitVersion 默认情况下不会 "stack" 递增 — 它只是采用最重要的递增并将其应用于基本版本。 IncrementStrategyFinder
中的一些相关代码是:
// cap the commit message severity to minor for alpha versions
if (baseVersion.SemanticVersion < new SemanticVersion(1) && commitMessageIncrement > VersionField.Minor)
{
commitMessageIncrement = VersionField.Minor;
}
// don't increment for less than the branch config increment, if the absence of commit messages would have
// still resulted in an increment of configuration.Increment
if (baseVersion.ShouldIncrement && commitMessageIncrement < defaultIncrement)
{
return defaultIncrement;
}
由于开发分支已经将基础版本增加了一个次要版本(即增加到 2.3.0),我的补丁版本增加指令将被忽略。
我正在尝试使用 GitVersion's +semver:patch
命令增加我的补丁版本号,但它没有按我预期的方式工作。
我的 master 分支上有一个标签“2.2.0”。我在 develop 分支上做了以下承诺:
b5d9f141 (HEAD -> develop, origin/develop) +semver:patch
75122489 Added unit test. +semver:patch
3b4e7eef (tag: 2.2.0, origin/master, master) Merge branch 'release/2.2.0'
我正在关注 GitFlow。在最近两次提交之后,我希望我的版本报告为 2.3.2,但 GitVersion 仍将其报告为 2.3.0。
"MajorMinorPatch":"2.3.0"
+semver
是如何工作的,有没有什么方法可以按照我想要的方式(即没有手动标记)仅使用提交消息来增加活动版本号?
Git 版本由
- 查找最新的"base version,"然后
- 找到最重要的增量(即主要、次要、补丁)。
就我而言,基本版本取自最新的标签 2.2.0。我的 +semver:patch
消息被视为 (2) 的一部分,但默认情况下开发分支配置为增加次要版本:
branches:
develop:
mode: ContinuousDeployment
tag: alpha
increment: Minor
GitVersion 默认情况下不会 "stack" 递增 — 它只是采用最重要的递增并将其应用于基本版本。 IncrementStrategyFinder
中的一些相关代码是:
// cap the commit message severity to minor for alpha versions
if (baseVersion.SemanticVersion < new SemanticVersion(1) && commitMessageIncrement > VersionField.Minor)
{
commitMessageIncrement = VersionField.Minor;
}
// don't increment for less than the branch config increment, if the absence of commit messages would have
// still resulted in an increment of configuration.Increment
if (baseVersion.ShouldIncrement && commitMessageIncrement < defaultIncrement)
{
return defaultIncrement;
}
由于开发分支已经将基础版本增加了一个次要版本(即增加到 2.3.0),我的补丁版本增加指令将被忽略。