目前我所了解的代码检查,一般都是在持续集成阶段来做。这么做虽然能够保证代码质量,但个人认为依然成本有点大主要体现在:
一个开发人员好不容易在自己分支上开发完成,然后push到服务器上,然后持续集成检查代码,发现代码风格不通过,这整个过程反馈的时间过长了。
目前开发的java项目希望能将代码检查如(checkstyle,pmd等)这些检查必须在本地提交前通过检查,而不是在push到代码仓库之后再做,希望达到的目标如下:
提交前必须通过代码检查,否则不允许提交
最好有工具支持,且不要依赖于IDE
代码检查工具的配置文件最好能做版本管理
目前想到的解决方案(还未尝试):
在maven中集成checkstyle等插件
在git/hooks中用脚本调用maven 进行验证,验证通过提交,失败则不允许提交
已经找到比较完美的方案,可以IDE中即时检查代码,使用SonarLint的插件
插件官网地址在这
sonarLint插件地址
下面是在IDEA中效果,实现即时反馈的效果
还有一个我一直梦寐以求的功能就是提交前验证,IDEA中的效果如下
终于可以在提交检查我的代码