Unit testing SpringRoo项目-版本控制中应该保留什么

Unit testing SpringRoo项目-版本控制中应该保留什么,unit-testing,version-control,maven,aspectj,spring-roo,Unit Testing,Version Control,Maven,Aspectj,Spring Roo,我正在开始一个SpringRoo项目,并注意到有许多文件,例如 AspectJ(.aj)文件-我认为这些文件很重要,因为它们包含很多代码。但不确定是否安装了roo,我们仍然需要将这些添加到版本控制中。或者每次都可以生成,我想不是。但我想从做过这件事的人那里得到答案 log.roo-我想这是一个非常重要的文件,我会保留它,因为它可以重新生成我的项目 eclipse.classpath/.project文件-我总是将它们保存在版本控制中,只是为了让安装程序对我可用。但不确定什么是最佳实践,因为我总

我正在开始一个SpringRoo项目,并注意到有许多文件,例如

  • AspectJ(.aj)文件-我认为这些文件很重要,因为它们包含很多代码。但不确定是否安装了roo,我们仍然需要将这些添加到版本控制中。或者每次都可以生成,我想不是。但我想从做过这件事的人那里得到答案

  • log.roo-我想这是一个非常重要的文件,我会保留它,因为它可以重新生成我的项目

  • eclipse.classpath/.project文件-我总是将它们保存在版本控制中,只是为了让安装程序对我可用。但不确定什么是最佳实践,因为我总是面临由于开发人员机器本地路径而导致的类路径问题

  • 单元测试文件-我希望将它们保存在版本控制中。我浏览了一下,但请分享一下你的想法

  • 目标目录内容-我想可能是保持这个作为空目录在版本控制可以很好,但想得到更多的想法


这些文件中的一些文件必须处于版本控制中,其他文件可以处于版本控制中,但不必如此。一般来说,将所有内容添加到版本控制中会更容易。让我解释一下:

  • *.aj文件:
这些不需要在版本控制中,因为它们可以由roo重新生成。然而,我建议把它们放进去,这样使用STS的人就可以简单地检查项目并开始工作,而不需要安装SpringRoo

  • log.roo
同样,这不是必需的,但可能是一个好主意,这样您就可以重新创建项目,或者简单地记录已经完成的工作

  • eclipse.classpath/.project文件
如果要在项目中使用STS,这些是必需的。没有STS,您无法轻松地将项目导入STS。当然,SpringRoo可以在很大程度上重新生成这些文件,但它需要在命令行上运行一些东西,然后才能在STS中使用它们

  • 单元测试文件
我认为出于链接问题中指定的所有原因,不将这些添加到版本控制中是愚蠢的

  • 目标目录内容

在这里的所有内容中,这是我唯一建议忽略的目录。目标目录包含构建工件,而不是项目工件。

我同意Andrew的观点,除了以下例外

您应该添加/src文件夹的所有内容。虽然它包含SpringRoo生成的工件,但这些工件是项目源,没有它们,您就无法使用CI工具构建项目

您肯定应该将pom.xml添加到版本控制中。我认为这个Maven的POM是Spring Roo产生的最重要的工件之一。使用POM,您可以在其他Maven任务(例如构建和报告)中配置IDE项目设置

所以,如果您有这两个部分(/src和pom.xml),那么您就有了可构建的项目,任何团队成员都可以轻松地将其与任何JavaIDE一起使用

我不同意安德鲁的观点,你应该存储.classpath/.project文件。它们与IDE密切相关,对于IntelliJ IDEA或NetBeans用户来说毫无用处。最好在使用SpringRoo检查源代码后生成这些文件

perform eclipse
还是马文的

mvn eclipse:eclipse
它们是等价的

当然,您不应该添加任何/target或/bin文件夹


所以只需添加/src、pom.xml和log.roo。太好了。

谢谢康斯坦丁!我们对特定于eclipse的文件采用相同的方法。您提到的两个命令都有助于快速启动eclipse。