2012-12-06 57 views
3

在有许多开发人员的项目中,如果他们的所有IDE都配置了相同的代码样式设置,这样当其他人更改您的代码时,您不会因为格式更改而检入版本控制而导致伪差异。您可以尝试说服每个人导入项目标准格式设置,但他们可能会忘记在创建新工作空间时这样做,并且在需要进行更改时忘记调整它们,因此随着时间的推移这将会丢失。如何在开发人员之间共享eclipse Java/XML代码样式设置?

那么,有没有一种简单的方法来自动的东西,每个人都有相同的设置,并得到他的设置会自动改变,如果他们需要进行更新 - 无需采取他们对自己的任何行动?

如果将这些设置配置为版本控制,但将其他文件设置为.settings,则这些设置中的很多设置将存储在.settings/org.eclipse.jdt.ui.prefs中。不幸的是,格式化程序设置包含在大桶.settings/org.eclipse.jdt.core.prefs中,因此您必须执行更复杂的操作来更新这些设置。所以我想知道是否有更简单/其他选项。

澄清:根据我的经验,很多开发人员忽略了在eclipse中调整各种代码风格设置的请求,因为他们认为它们不重要。所以我想让他们使用项目标准设置至少非常容易,最好代码风格适应应该完全没有他们的合作 - 尤其是在编码风格的更新。我正在寻找工具来做到这一点。

+0

我创建了一个非常通用的答案。请注意,应该有几个团队相关的插件可以为你做到这一点。 –

+0

请注意,大多数开发机器都有相当宽松的设置,我在本地管理员工作。这意味着开发人员总是可以“欺骗”并使用Eclipse的其他实例(或其他工作空间)。所以你唯一能确定的是版本控制系统正在检查什么。所以你可以使用钩子或自动构建过程来检查。你不能在本地执行任何操作。 –

+0

@owlstead我不想执行任何操作 - 这对大人来说不合适。我只想拿走借口:-),并且做正确的事情比做错事容易。 –

回答

1

警告:这不是一个好主意,过于严格了,当谈到代码风格。许多程序员都有自己的风格。所以要小心你想要的。

Eclipse中的最简单的方法是首先通过简单地将其复制到开发人员的机器,创建一个空的工作空间和使用。你甚至可以复制Eclipse与所有插件。这有不得不手动创建更改的缺点。这也是最严格的选择。

另一种方法是导出/导入所有设置。这是多一点工作,但限制较少。您需要分发以下设置:格式化程序,清理,模板。此外,您仍然必须设置最大值。在一般设置中的线大小。

让人们坚持代码的做法,最好的方法是创建一个关于最低需求文档。确保你记录你的决定并让人们参与。然后检查一下是否有人坚持它;如果让让程序员溜它走自己的路。管理层(不幸)在这里扮演一个角色。

执行代码风格的最好方法是创建一个CheckStyle的配置,并将其作为一个只读文件在磁盘。然后,您可以将其用作CheckStyle插件的外部样式表。确保Eclipse格式化程序和清理设置相匹配。

相同CheckStyle的配置可以在自动构建环境被用于生成警告和错误。这些警告和错误应在审查期间讨论。确保你有漏洞,如果需要,规则应该破坏。

管理开发商是“没有什么不同放牧一群猫”

+0

我完全同意你的意见。然而,我正在寻找的是那些没有团队成员合作的方法。根据我的经验,许多开发人员忽略更改其样式设置的请求。 Checkstyle很好,但它只验证人们正在使用正确的设置 - 我想让它变得非常容易,或者甚至不明显。 –

+0

对于拥有“自己风格”的人来说,我曾经在一个团队中工作过,他们开始编写文件时会有几个人运行他们的个人风格格式,然后在他们检查任何内容之前运行官方格式。这样人们可以做他们自己的事情,但它不会搞乱'diff'。我认为OP的真正问题在于,这是一个像你所提到的管理/团队领导问题 - 有人必须执行这些规则。 – Windle

1

在我以前的公司,我们将创建一个“默认”或在那里一切都是根据个人口味配置的“模板”工作区(如按键设置,查看职位等)根据公司规则(格式化程序,编译器警告,checkstyle,强制插件等)。

每次我需要一个新的工作区时,我只是复制了这个模板工作区。

由于从头开始对新工作场所感到如此痛苦,人们习惯于习惯使用模板,而不是创建一个完整的新工作空间。所以人们忘记它从来没有问题。

相关问题