3

我目前的 GitVersion 是 3.2.1,但前一段时间是错误的。

如何将版本降低到 2.2.1?

如果它很重要,我正在使用 TeamCity。

4

1 回答 1

1

这是个有趣的问题...

它归结为,版本是/正在被断言的。例如,你到底是什么意思done by mistake

如果您的意思是您错误地使用 标记了存储库3.2.1,并且您现在已经删除了该标记,那么它可能就像删除 GitVersion 创建的断言版本号的缓存一样简单。这可以.git\gitversion_cache在您的存储库中的文件夹中找到。删除代表您正在运行的提交的 SHA 的单个文件,或删除整个文件夹。由于 GitVersion 断言版本号需要时间,因此拥有断言版本号的缓存非常有用。但是,如果从配置的角度来看发生了变化,GitVersion 可能会感到困惑并返回错误的版本号。

如果3.2.1由于提交消息中的版本冲突而建立版本号,则可以让 GitVersion 忽略 git 历史记录中的特定提交。你可以在 GitVersion.yml 文件中看到一个例子:

https://github.com/cake-build/cake/blob/develop/GitVersion.yml#L15

例子

ignore:
  sha:
    - 2a4757b270f7946122ba6622e3d2e72b2b2808a7
    - 3e91c23637b97bc4e4c3234f93ffd03e6af70e8c

由于这些提交的提交消息,这是必要的:

https://github.com/cake-build/cake/commit/2a4757b270f7946122ba6622e3d2e72b2b2808a7 https://github.com/cake-build/cake/commit/3e91c23637b97bc4e4c3234f93ffd03e6af70e8c

提交消息中的版本号导致 GitVersion 错误地碰撞断言的版本号。

如果您本质上想要进行重置,并再次启动 GitVersion 编号,您可以使用另一种技术来忽略某个日期之前的所有提交消息。这记录在这里:

http://gitversion.readthedocs.io/en/latest/configuration/#commits-before

例子

ignore:
  commits-before: 2017-09-08T08:08:00

因此,断言的版本号将仅作为在上述日期之后提交的结果来计算。

于 2017-09-08T07:10:30.217 回答