如何强制代码样式格式作为构建的一部分?

Posted

技术标签:

【中文标题】如何强制代码样式格式作为构建的一部分?【英文标题】:How to force code style formatting as part of the build? 【发布时间】:2011-11-13 06:07:18 【问题描述】:

有没有办法(使用 ANT),可以自动重新格式化代码以遵循某些约定?

我有几个开发人员正在开发一个程序,并希望在提交之前保证所有类的代码格式在构建时保持一致

【问题讨论】:

如果您必须有任何自动格式化规则,请选择签入时间而不是构建时间。后者会导致额外的合并成本和签入噪音。 【参考方案1】:

预提交的最佳方法是在源代码控制服务器上使用预提交挂钩。通过这种方式,您可以强制在不符合代码标准的情况下没有代码进入分支。

http://checkstyle.sourceforge.net/ 可以用作 ANT 任务或预提交挂钩。因此,您可以在源代码控制服务器上运行它,或者作为每个开发人员的 ANT 任务运行。但是,没有什么可以阻止您的开发人员忽略它。

您可以通过让开发人员在分支中完成所有工作并使用集成分支来完成此提交后操作。您可以将代码样式检查器添加到 Jenkins http://jenkins-ci.org/ 之类的连续集成服务器中,并使用 http://wiki.hudson-ci.org/display/HUDSON/Sonar+plugin 之类的插件来报告对集成分支的最新提交是否不符合标准。集成分支通过所有测试后,您将其添加到主分支。

【讨论】:

以上是关于如何强制代码样式格式作为构建的一部分?的主要内容,如果未能解决你的问题,请参考以下文章

如何为 .NET 项目自定义强制代码样式规则

如何为 .NET 项目自定义强制代码样式规则 #yyds干货盘点#

CSV DictReader,如何强制“”中的部分作为列表而不是字符串读取

如何强制 QChartView 仅绘制自身的一部分

代码格式化 - 在规则被破坏时中断构建

如何强制客户端代码使用合约初始化 Kotlin 中所有必需的构建器字段?