Java 将Eclipse项目签入SVN
我想将我在eclipse中创建的动态Web项目签入svn。有人能告诉我哪些文件我必须签入,哪些不应该签入吗?其想法是能够使用“新建项目向导”签出项目,以便我可以再次创建动态Web项目。更具体地说,这里是我在项目中拥有的文件/目录--Java 将Eclipse项目签入SVN,java,eclipse,svn,Java,Eclipse,Svn,我想将我在eclipse中创建的动态Web项目签入svn。有人能告诉我哪些文件我必须签入,哪些不应该签入吗?其想法是能够使用“新建项目向导”签出项目,以便我可以再次创建动态Web项目。更具体地说,这里是我在项目中拥有的文件/目录-- src 网络内容 建造 距离 build.xml .项目 .classpath .设置/ 显然,不应该签入生成目录。其他的呢? 我猜所有的答案。也不应签入文件。有人能证实这一点吗? 这个dist目录和.settings目录是什么 eclipse在哪里存储服务器信
- src
- 网络内容
- 建造
- 距离
- build.xml
- .项目
- .classpath
- .设置/
- .项目
- .设置/
- .classpath
删除这3个选项后,“新建项目向导”将按预期工作,一切正常。我将省略.project、.settings/、dist和build
如果使用变量而不是硬编码路径,则可以保留.classpath。这很有用,因此您不必每次签出项目时都重新生成类路径。在我们的例子中,我们已签入列表中提到的所有内容,除了.settings/ 通过签入
.classpath
和.project
,用户可以快速签出项目并在新计算机上启动Eclipse,然后开始使用它;另一种方法是手动配置项目,并费力地添加所有jar依赖项(如果您使用ant)。许多开源项目都是这样做的
阅读,这里有一些非常好的观点值得思考。好问题。。。对于是否要签入IDE相关文件,我们中的许多人都处于进退两难的境地。我通常会为eclipse签入.classpath,并使用eclipse变量来确保团队只需更改变量值,就可以正常工作。我们还签入.project,这样团队就不需要在他们的工作区中创建新项目。如果您签入
.classpath/.project/.settings
,您将使您的项目特定于Eclipse。使用Netbeans
或IntelliJ
的开发人员如何?在我看来,保持项目IDE的独立性和易于设置更为简洁
我通常会选择Maven版本。pom.xml
指定所有必需的依赖项,并且mvn eclipse:eclipse
为您生成.classpath/.project
文件
.settings
目录包含本地设置(如要使用的Java版本)。在我看来,签入此项是没有用的。您可以通过Maven2 pom强制执行Java版本遵从性
最后,对于你的下一个项目,我的任务是在你第一次提交之前忽略你不想在svn中使用的文件或目录。在Maven2设置中,它将是.settings
.classpath
.project
目标(Maven2的默认输出目录)和任何其他生成的内容(日志文件、gfembed目录等)。在您的情况下,您将忽略build
和dist
,而不是target
您可以使用鼠标右键->团队->添加到svn:ignore'
(我使用Subclipse插件)来svn ignore
文件或目录。忽略指令作为svn属性
存储在父目录中。目录上的属性可以通过鼠标右键->团队->显示属性查看。您也可以通过单击“值”字段直接在此处编辑属性。确保每个属性后面都有一行结束符
既然您已经提交并删除了这些文件,根据我的经验,忽略将不再有效。不知何故,我从未成功地忽略已签入SVN存储库的生成文件;他们就像僵尸,总是死而复生。也许通过在SVN回购协议中实际删除他们的条目可以实现这一点,但我从来没有这样做过 谢谢,这是一个关于IDE特定文件的好观点,使用svn ignore也是一个好主意。虽然.settings的内容是特定于Eclipse的,但这并不意味着它们不需要与团队的其他成员共享。具体来说,您可能希望为您的项目共享JDT警告首选项。通过生成它们来分享这些将是一种真正的痛苦。这一点很好。我有时通过从IDE导出这些设置并共享文件来共享这些设置。例如,Eclipse允许导出格式和代码模板规则。另一个例子是checkstyle设置。所有这些设置通常都是公司范围内的策略,因此人们经常在Confluence Wiki上找到它们,而不是签入每个项目。这些文件的存在允许其他eclipse开发人员使用它们,并且根本不会伤害其他IDE的用户-将它们签入生成的eclipse工件中实际上会伤害使用eclipse的人,不是使用其他IDE的人。本地生成的工件将与签入版本保持“斗争”(显示为更改)。根据一般经验,提交生成的源代码(几乎)从来都不是一个好主意。博客文章的死链接,新URL是: