7

我目前在使用 git 的语义版本控制时遇到问题。

我们在http://nvie.com/posts/a-successful-git-branching-model/使用 git 版本控制模型

我们还希望遵循http://semver.org/中概述的语义版本控制指南

这是我们的一个示例用例。

Release branch: ----1----2----3----4 <- tag v1.2        ----7---8---9 <- tag v1.3
                   /                \                  /             \
Develop branch: --0--------5---------4--6-----------------------------9--

这是我们的示例用例:

  • 开发在发布和开发时并行发生
  • 发布已准备就绪,我们将其标记为 v1.2。我们为更改 1、2、3、4 生成发行说明。
  • 我们将发布合并回开发。
  • 当我们准备再次为另一个版本开发分支时,我们可以。但是,标签 v1.2 指向 4,因此如果我们查询 v1.2 和 v1.3 之间的更改,5 的发行说明实际上会丢失

我们想要做的是能够搜索自创建标签 v1.2 以来所有新添加的签入,这些签入新合并到标签 v1.3 中,以便我们可以确定我们的组件的版本凹凸 (xyz) 类型需要制作。

如果 5 恰好是一个重大更改,但从 v1.2 开始的所有内容都不是,我们将错误地碰撞次要版本,因为签入 5 不在构建中。

有人对如何解决这个问题有任何建议吗?

4

1 回答 1

2

我想这取决于您如何“查询更改”。但是,如果您的意思是 usinggit log v1.2..v1.3或类似的东西,那么这应该会准确地显示您想要的内容,即包括提交 5。

于 2012-04-04T01:09:06.437 回答