我是否应该提交整个代码库以及POM,并让用户一次签出多个项目,其中一个包含多个模块?我应该如何在SCM中配置我的MAVEN项目?
我是否应该只提交POM,并在每个POM中配置SCM信息?
当您配置maven SCM插件时,提交/签出如何工作?你是否通过颠覆存储了POM,将它们检出,然后实现POM,Maven会将相应文件的其余部分下载到该项目中?如果你需要添加新文件,但是你通过maven使用SCM呢?
我对使用svn(标准方式)存储文件和基于每个存储SCM信息之间的差异感到非常困惑。似乎没有关于如何使用Maven和加载SCM信息的文档。
最好是直接在POM中存储SCM信息,还是像我之前说的那样,我应该只是将整个项目添加到SVN中,包括它们各自的POM?
还是将SCM信息直接嵌入到maven中,让maven实现所述项目更好? Maven SCM插件是否可以很好地与subclipse配合使用?例如 - 在你从maven POM中“物化”一个项目之后,它是否从SVN导入项目文件,然后在eclipse中将它们显示为版本控制之下?如果我将SCM信息嵌入到Maven POM中,那么我会只为我的pom文件创建一个单独的SVN回购?或者我只是将所有的POM文件直接放在我的工程回购的主干中?
希望有人能帮我澄清这一点。我很困惑。谢谢!
我认为它被称为Bootstrapping。但我不确定 – 2012-02-02 14:43:37
当我将项目存储在SVN中时,我没有包含eclipse .project设置和其他自动生成的其他东西。我是否也应该提交eclipse项目?当你通过svn(import> import from svn)检出我的maven项目并选择“check out as workspace in the workspace”时,它不会将其识别为maven/java项目。它只是显示了POM和文件,但没有任何Maven支持。但是,如果我将项目签出为Maven项目,那么它可以工作,但它不会将文件显示为受SVN控制。有点奇怪。我错过了什么? – 2012-02-02 14:48:43
@SamLevin,通常我不检查日食。项目设置,因为任何对项目的修改(包括设置运行时配置参数)往往会在执行svn更新时被擦除,或者在执行svn commit时传播不合需要。但是,分发文件非常有用,可以方便初始设置(并避免手册详细说明要设置什么项目以及在哪里设置)。因此,我制作了一个文件夹,将配置文件放置在正常位置之外,并在其中放置一个“设置”脚本,将其复制到适当的位置。 – 2012-02-02 17:15:16