2010-09-03 63 views
1

我维护一个使用Mercurial进行版本控制并使用Maven进行管理的项目。从Mercurial中修正错误修复Maven项目中的更改(不提取pom.xml)

当我们发布1.0版本时,我们克隆了一个发布版本库,该版本库将包含错误修正和主版本库上的继续开发。发行版回购在POM版本为1.0,而开发回购版本为1.1-SNAPSHOT。

现在,我怎样才能将发布版本库中的bug修复引入到开发库中,而不影响开发版本的POM中的版本号?

回答

1

当您将更改拉入开发存储库时,您必须进行合并。如果您在两个存储库中都更改了POM,则必须在第一次合并时解决合并冲突 - 解决它以让1.1-SNAPSHOT获胜,并且稍后您再次进行合并时您会很好。 。顺便说一下,我实际上会希望你先将POM更改为版本1.0,然后分离发布版本库,然后将其从1.0更改为1.1-SNAPSHOT。这样,当你将错误修正引入开发库时,你就不会有任何冲突。

历史是这样的:

... --- [1.0-SNAPSHOT] --- [1.0] --- [1.1-SNAPSHOT] ----- [M1] -- ... -- [M2] 
           \      /   /
           [bugfix 1] --- [bugfix 2] --- [bugfix 3] 
+0

如果错误修正与在POM更新的版本号发布,会发生什么?我怎样才能防止这些版本号传播到开发库? – xmjx 2010-09-16 08:58:41