2011-11-29 30 views
0

我有一个关于Maven Release插件的问题。根据插件文档,发布之后所遵循的步骤之一是:准备目标是:发布:准备足够的目标步骤吗?

  • 检查源中是否没有未提交的更改。

我明白这一点的重要性。让我们以许多开发人员开发的多模块项目为例。每个开发人员都已完成其工作,并且该项目已准备好发布。但是,一台机器上只有一个人可以发布,我认为检查执行发布人的工作副本中是否存在未提交的更改是不够的。

也许在其他开发人员的工作副本中有未提交的更改,这些副本也适用于该项目?我缺少的东西(我的意思是,这真的是一个问题吗?如果是的话,有没有办法做这些验证与Maven或其他开发人员的工作副本必须手工检查?)

感谢

+0

你不应该在开发者机器上这么做......我会为此目的使用一个构建服务器,并且这应该总是进行全新的检出(或者在Subversion的情况下至少还原一次)。 – mliebelt

回答

1

它检查源中未提交更改的原因是,释放的二进制文件与存储库中的源代码相对应。

如果在发布版本的计算机上发生未提交的更改,则二进制文件不会与源对应。

如果其他开发人员有未提交的更改,那并不重要,因为他们的更改不会在二进制文件中结束。

+0

好的,但这些更改可能是发布的一部分。我的意思是,如果一位开发人员已经开发了特定于此版本的功能,则不会考虑其更改,并且这是一个错误的版本,因为它不包含此功能。所以,我不明白为什么没关系? –

+0

是的,但你可以通过检查源代码来弄清楚。就像我说的那样,检查的原因是确保二进制文件与存储库源相匹配,仅此而已。 – artbristol

+0

好的,但我的问题是,是否有自动的方式来做这些验证?我的意思是检查其他开发人员的工作副本是否完全承诺。 –