Eclipse项目:要被颠覆的文件

Eclipse项目:要被颠覆的文件,eclipse,svn,Eclipse,Svn,我创建了一个Eclipse项目,现在我想把它放在我的SVN存储库中。我应该把哪些文件放在忽略列表上?有很多文件我不知道它们是用来做什么的。有.history、.root、.safetable、.log、.settings等文件夹。。。还有许多.index文件,还有一些.running文件。我可以把所有这些都放到忽略列表中吗?您知道哪些扩展/文件夹可以始终处于“忽略”状态吗 谢谢。我的第一个猜测是,任何名称以点开头的文件都不应该进行版本控制。最常见的此类文件是指与项目无关的Eclipse设置 现在

我创建了一个Eclipse项目,现在我想把它放在我的SVN存储库中。我应该把哪些文件放在忽略列表上?有很多文件我不知道它们是用来做什么的。有.history、.root、.safetable、.log、.settings等文件夹。。。还有许多.index文件,还有一些.running文件。我可以把所有这些都放到忽略列表中吗?您知道哪些扩展/文件夹可以始终处于“忽略”状态吗


谢谢。

我的第一个猜测是,任何名称以点开头的文件都不应该进行版本控制。最常见的此类文件是指与项目无关的Eclipse设置

现在,Java项目中的.project和.classpath文件非常“依赖于项目”,我通常包括它们


要获得更精确的答案,您应该指定您正在处理的项目类型。

答案取决于您的项目。提交源代码是一件好事,但是它会迫使新开发人员重新创建项目环境,这可能会很痛苦。如果使用Maven和m2eclipse插件,只提交
src
pom.xml
是一种很好的方法,因为从src和
pom.xml
重新创建Eclipse环境只需几分钟


另一方面,提交
.classpath
.project
是可以的,但是这也意味着额外的工作,比如从不直接使用外部jar,而是通过变量或用户库等。

如果你有时间进行实验,为什么不签入所有内容,让同事签出项目,看看是什么引起了错误?如果你的同事没有像你一样组织她的硬盘,任何引用项目外路径的东西都可能失败。这些内容应该更改为引用变量,或者不受版本控制

让您的同事构建项目,运行IDE,然后同步到存储库以查看更改的内容。应忽略易失性文件、运行时日志和临时文件。任何可以让其他开发人员更容易地设置项目并开始运行的东西都应该包括在内。花时间进行实验将帮助您更好地了解项目是如何设置的

基本上,您希望避免签入从源代码派生的任何内容(如Java项目中的.class文件)或每个开发人员都必须为其本地环境更改的任何内容,如在项目目录外具有绝对引用的文件。我过去在处理需要开发人员自定义的配置文件时使用的一种方法是包含文件的副本,通常带有额外的注释,扩展名为.example。在自述文件或其他文档中明确哪些示例文件需要定制,以及文件的“真实”名称应该是什么。同时在svnignore列表中包含“真实”文件名,这样它就不会被签入并覆盖每个人的本地定制

要解决您的具体示例,请执行以下操作:

.history、.root、.safetable、.log、, .设置。。。和许多.index文件, 还有一些,跑步


。设置是您必须尝试的设置。如果您有所有开发人员都需要遵循的设置,例如代码样式或格式准则,那么将这些设置置于版本控制之下可能会很方便,但某些其他设置可能不适合所有开发人员。其他示例我并不熟悉,可能是因为它们与我不使用的Eclipse项目类型相关。

我只提交
src
文件夹,避免提交任何以点开始的文件/文件夹,但这在很大程度上取决于您的文件夹结构,我的信念是只提交源代码。我刚刚想到.index文件可能是什么。您正在查看工作区目录而不是项目目录吗?您工作区的.metadata文件夹下可能有.index文件。