我们使用 Maven 进行构建,使用 Mercurial 进行变更集。虽然我们的软件已经处理了一个主要版本,但我们真的很想知道 Mercurial 变更集用于构建运行我们软件的任何服务器。
有没有人知道在 Maven 中获取工作目录在 Mercurial 中的变更集并将其放入属性文件或其他内容的方法,这样当系统管理员针对当前正在运行的版本进行“健全性检查”时,我们就可以在应用程序的某个位置显示它?
最佳答案
您可以制作一个更新 Hook ,将变更集 ID 输出到未版本化的 .properties 文件中:
[hooks]
update = echo changesetid=$HG_PARENT1 > version.properties
这种方法的优点是您可以在需要时轻松自定义此值,并且构建保持独立于版本控制系统(或缺少版本控制系统)。
如果你想在生成它的 Maven 构建中添加一些东西,你看过 Buildnumber Maven Plugin (hgchangeset 目标)或 Maven Mercurial Build Number Plugin ?
关于maven - 通过 Maven 将 Mercurial 工作目录变更集 ID(例如(838cb9c0367e))注入(inject)属性文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7896459/