版本控制中的IDE项目文件–是或否? 当然不是!
基本上,此问题的答案不是二进制,是或否,但也可以是“是,但是...”或“如果...则否”。 因此,可能有人会争论为什么有人偏爱一种方式或另一种方式。
绝大多数答案是“不,不,不,不!!! 决不!'。 仅有几个答案是“是”,其中有些微弱的论点是为什么有人应该将这些文件保留在版本控制中。
以下是一些是的答案。
坏事。 似乎团队并不真正具备这些工具的能力。 该项目应该易于设置,为什么我应该按下100500按钮来设置一个项目。 如果是这样,团队负责人应该做的第一件事就是简化项目结构,设置和构建过程。 没有借口。
是的,是的,我已经可以听到一些类似的说法,例如“但是我们有一个复杂的项目”或“这是完成设置的方式”。 牛逼* t!
好的,尽管有特定于IDE的设置,但还是有一些优化。 如果所有团队成员都使用相同的设置,那么对于那些想远离控制台的人来说甚至更有意义。
这是另一个:
“特定的Eclipse插件” –是的! 这实际上是不将文件保留在版本控制中的一个论点! Eclipse插件通常会在添加.nature或任何其他项目特定的设置到配置时修改.project文件。 实际上,IntelliJ可以做到这一点,但是(从一点点让我回到工具上)IntelliJ可以在您从头开始打开项目时建议设置。 而使用Eclipse,则必须手动进行。 如果您的同事使用一些很棒的Eclipse插件对.project文件进行了修改,而您讨厌该插件并且不想安装它,并且.project文件处于版本控制中,该怎么办? 这只是一个简单的示例,您可以在导出带有现有项目文件的项目时看到:
解决此类问题非常烦人。 您要做的只是打开项目并继续进行正常工作。
还有更多:
当前,我使用IntelliJ,其余的团队使用Eclipse。 而且我绝对不在乎它们是否将项目文件放入版本控制中,因为无论如何我都会单击两次将其导入到我的IDE中。 因此,假设“绝对是的,假设团队正在使用相同的IDE”是错误的,这里也没有可行的论点。 但是,这里有一些更有趣的想法:
哇,这真的很有趣-“那些定义格式或源代码的人”。 确实! 如果您为不同的客户处理varions项目,则要求和代码样式可能会完全不同,即使将此类文件保留在版本控制中也是有意义的,因此您可以与团队共享并恢复代码样式设置如果你失去了他们。 好点在这里! 但是,您现在可能可以看到我的帖子的载体。
因此,关键是,IDE很好地支持了Maven,因此,如果我们已经有了所需的东西,为什么我需要将IDE设置保留在版本控制中: pom.xml 。 如果您使用JBoss Tools ,那么IntelliJ和NetBeans可以很好地解决这一问题,而Eclipse也可以很好地解决这一问题。
但是,如果我是Maven讨厌者,该怎么办? (我真的是)。 这是一个有趣的对话:
哦,可以肯定,Gradle是! 好吧,IDE支持还不存在。 幸运的是,STS为Eclipse提供了一个不错的Gradle插件,但是对IntelliJ和NetBeans的支持还不存在。 但是,我声称Maven或Gradle不是避免版本控制中项目文件的先决条件。 真正的先决条件是您的项目的简单设置和整洁的结构,因此只需单击几下即可导入项目。 然后,您可以处理任何类型的项目,即使其中不包含pom.xml。 这是大多数人对这个话题的看法:
我本人曾尝试过两种方法–将项目文件保留在版本控制中而不将其检入,我认为在任何情况下都不要将项目文件检入。最好的解决方法是保留您的项目结构简洁明了,这可能比将文件检入版本控制要难一些,但从长远来看会更有利。
感谢大家的投入! 照顾自己…
参考: 版本控制中的IDE项目文件–是或否? 当然不是! 从我们的JCG合作伙伴 Anton Arhipov在Code Impossible博客中获得。
翻译自: https://www.javacodegeeks.com/2012/07/ide-project-files-in-version-control.html