在基于主干的开发分支模型中,您在主干上开发并从分支发布,每个版本都需要更新主干和新分支中的 POM 文件。
例如,如果将主干中的版本设置为 1.0-SNAPSHOT,则需要将发布分支更新为 1.0,主干更新为 1.1-SNAPSHOT。
我真的想要一种替代策略来排除更新主干上的版本的需要,以及与此相关的所有相关任务。考虑一下,您实际上不需要将版本号应用于主干。版本号仅在发布过程中真正变得相关,但 Maven(出于多种原因)需要版本号。
作为替代方案,我们可以将主干上的版本设置为 0.0-SNAPSHOT,这基本上表示特殊构建。但是,问题在于,就 Maven 而言,它会将其置于所有其他版本之前。
另一种方法可能是使用一些非常大的数字。这至少会在每个其他版本之后,如果主干代表您的开发的尖端,这是正确的。不过这感觉有点武断。
我能看到的唯一其他选项是使用字符串版本 - 例如 HEAD 或 LATEST,但这不符合最新的 Maven 版本控制方案。除了失去 SNAPSHOT 功能外,我相信整数版本将始终被认为比字符串更新(参见此处)。
所以,
- 这个理论看起来合理吗?
- 如果是这样,是否有更好的策略?