你真的需要对maven项目的主干进行版本化吗?

时间:2014-06-25 23:58:55

标签: maven version-control maven-3 branching-strategy

在基于主干的开发分支模型中,您在主干上开发并从分支发布,每个版本都需要更新主干和新分支中的POM文件。

例如,如果中继中的版本设置为1.0-SNAPSHOT,则需要将发布分支更新为1.0,将中继更新为1.1-SNAPSHOT。

我真的很喜欢另一种策略来排除更新主干上版本的需要,以及随之而来的所有相关任务。考虑到这一点,您不应该真正需要将版本号应用于主干。版本号仅在发布过程中真正变得相关,但Maven(出于多种原因)需要版本号。

作为替代方案,我们可以将主干上的版本设置为0.0-SNAPSHOT,这实质上表示特殊版本。但问题是,就Maven而言,它会将它放在每个其他版本之前。

替代方案可能是使用一些非常大的数字。至少这个位置是在每个其他版本之后,如果主干代表开发的提示,则这是真的。这感觉有点武断。

我能看到的唯一其他选择是使用字符串版本 - 例如HEAD或LATEST,但这不符合最新的Maven版本控制方案。除了失去SNAPSHOT功能外,我相信整数版本总是被认为比字符串更新(参见here)。

所以,

  1. 理论是否合理?
  2. 如果是的话,那里有更好的策略吗?

1 个答案:

答案 0 :(得分:0)

如果您愿意,可以简单地使用 TRUNK-SNAPSHOT 。这给你"最新"具有静态"版本"。

的分辨率