使用Eclipse时,我应该将工作区添加到源代码管理中吗?

时间:2009-09-15 19:18:15

标签: eclipse version-control

我是这个项目的唯一开发人员。

6 个答案:

答案 0 :(得分:14)

我不会添加完整的工作区,但我会添加.classpath.project文件(当然还有源代码),以便您可以在需要时重新创建项目。

答案 1 :(得分:8)

我不会提交整个工作区。但是,如果您需要进行多项更改以防需要将平台设置导入新工作区,则可以将平台设置导出并将其检入源控件(可能在单独的SCM项目中,因为它们并不属于任何单个项目)

这些文件的示例是:

的设置
  • Java->代码样式 - >格式化程序
  • Java->代码样式 - >清理
  • Java->代码样式 - >代码模板
  • 常规 - >编辑器 - 文本编辑器 - 拼写词典
  • 您对该支持导入/导出进行了大量更改的任何其他首选项

您应该检查项目的主要来源/资源。正如其他人所指出的,对于典型的项目,这包括.project和.classpath文件。

根据项目类型,我将从项目中添加.settings文件夹。此文件夹包含覆盖平台首选项的项目特定设置以及其他项目特定设置。如果那些对您的项目至关重要,那么我会添加它们。

答案 2 :(得分:5)

没有

IDE或生成过程生成的文件(二进制文件,生成器生成的文档)不应检入源代码管理。应该检查的唯一文件是源文件和源文件使用的外部库。

您可能也对此问题的答案感兴趣:What should NOT be under source control?

答案 3 :(得分:2)

我只会提交您正在处理的项目,以及.classpath和.project文件,而不是整个工作区本身。

答案 4 :(得分:2)

即使您是唯一的开发人员,也要避免提交.settings目录。您可以切换到另一个版本的Eclipse,或者使用不同的插件集进行另一个安装,当您在第二个安装中签出项目时,.settings目录将会有所不同。同样,.metadata目录也会发生变化。

也就是说,尝试使用Maven,以便生成Eclipse .project和.classpath文件,而无需检入它们。

答案 5 :(得分:1)

我已经玩过(使用Subversion)有一个“MyProject_Eclipseproj”文件夹,它只包含Eclipse项目文件和目录,并带有一个svn:externals prop,它可以提取所有“MyProject”文件/目录。

所以,布局将是:

/repos/trunk/MyProject
/repos/trunk/MyProject/build.xml
/repos/trunk/MyProject/src
/repos/trunk/MyProject/src/com
/repos/trunk/MyProject/src/com/mypackage
/repos/trunk/MyProject/src/com/mypackage/MyClass.java
/repos/trunk/MyProject_Eclipse_34 <- external prop goes here
/repos/trunk/MyProject_Eclipse_34/.settings/
/repos/trunk/MyProject_Eclipse_34/.project
/repos/trunk/MyProject_Eclipse_34/.classpath
/repos/trunk/MyProject_Eclipse_35 <- external prop goes here
/repos/trunk/MyProject_Eclipse_35/.settings/
/repos/trunk/MyProject_Eclipse_35/.project
/repos/trunk/MyProject_Eclipse_35/.classpath

MyProject文件夹是纯代码,没有日食污染。 MyProject_Eclipse_Ver将包含Eclipse特定文件,以及指向代码文件夹的指针。您还可以为不同的Eclipse版本提供特定文件夹,以便在版本之间的.settings或.project文件中发生更改时,不会强制每个开发人员升级。