gpt4 book ai didi

git - GitVersion 的 +semver 命令如何工作?

转载 作者:行者123 更新时间:2023-12-04 01:35:41 35 4
gpt4 key购买 nike

我正在尝试使用 GitVersion 来增加我的补丁版本号的 +semver:patch 命令,但它没有按我期望的方式工作。

我的 上有一个标签“2.2.0”大师分支。我在 上做了以下提交开发 分支:

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工作,有什么方法可以只按我想要的方式提交消息来增加事件版本号(即没有手动标记)?

最佳答案

GitVersion 由

  • 查找最新的“基本版本”,然后
  • 找到最重要的增量(即主要、次要、补丁)。

  • 就我而言,基本版本取自最新的标签 2.2.0。我的 +semver:patch消息被视为 (2) 的一部分,但默认情况下,开发分支配置为增加次要版本:

    branches:
    develop:
    mode: ContinuousDeployment
    tag: alpha
    increment: Minor

    默认情况下,GitVersion 不会“堆叠”增量——它只是采用单个最重要的增量并将其应用于基本版本。部分相关代码来自 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),我的补丁版本增加指令被忽略。

    关于git - GitVersion 的 +semver 命令如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59685867/

    35 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com