【问题标题】:When commiting projects should I include .project & .classpath?提交项目时,我应该包括 .project 和 .classpath 吗?
【发布时间】:2012-04-06 03:51:15
【问题描述】:

当我将 Web 应用程序提交到源代码管理时,我是否还应该包含 .project 和 .classpath 文件?我认为这两种方式都不应该有任何区别,因为使用该项目的其他用户应该具有相同的项目设置?

【问题讨论】:

    标签: eclipse version-control clearcase


    【解决方案1】:

    在一场永无休止的辩论中,这类问题会让人们陷入僵局。你基本上有两个阵营:

    1. 仅将源代码放入源代码控制系统。每个开发人员都选择自己的 IDE 并管理自己的项目配置。从存储库获取源代码后设置 IDE 会很棘手。如果一个开发人员更改了项目依赖项,他们必须明确传达这一点,以便所有其他开发人员更新他们的项目配置。有一些工具试图解决这个问题,比如 Maven 插件,它会尝试从 pom.xml 生成 Eclipse 项目元数据,但它们都有其局限性。采用这种方式的团体更喜欢在 IDE 中不限制开发人员选择的纯粹性,而不是让 Eclipse 项目在团队中正常工作的便利性。

    2. 在 Eclipse 上标准化。将所有 Eclipse 项目元数据放入源代码管理中。这包括 .project、.classpath 和 .settings 的全部内容。基本上,您不希望在源代码控制存储库中出现在 Eclipse 中标记为派生的内容。您可以在右键单击->属性中进行检查。采用这种方法可确保开发人员在从源代码管理中获取项目后立即开始编码。无需额外配置。此外,当一名开发人员更改项目配置时,团队的其他成员将在下次同步时看到相同的更改。

    选择对您的团队最有意义的方法。

    【讨论】:

      【解决方案2】:

      对于 ClearCase,包括 .project.classpath 在您使用 IBM ClearCase plugin for Eclipse 时会有所不同。

      如果该插件可以依赖于源旁边的那些(版本化)文件(而不是在不一定包含所述源的 Eclipse 工作区中),那么该插件会更好地工作。

      【讨论】:

        【解决方案3】:

        通常,生成的任何内容都不应进入存储库。这些文件通常由 IDE 或 maven 生成。但是,有时您可能需要单击按钮或执行命令才能生成这些内容。

        【讨论】:

          【解决方案4】:

          我会包括他们。

          .project 文件包含插件信息(例如 maven、ant、pdt、wst、aspectj、findbug..)。如果它不是一个普通的 java 项目,它是必不可少的。

          .classpath 包含类路径。如果您使用 jar 文件,则需要它。

          【讨论】:

            【解决方案5】:

            我会说所有文件(包括 .project 和 .classpath)都应该进行源代码管理,以确保团队中的每个人都有完全相同的设置。

            【讨论】:

              猜你喜欢
              • 2011-04-06
              • 2016-10-18
              • 1970-01-01
              • 2019-03-29
              • 1970-01-01
              • 1970-01-01
              • 2017-11-17
              • 1970-01-01
              • 2013-07-28
              相关资源
              最近更新 更多