不到断气不罢休 发表于 2024-6-14 22:50:18

php质量工具系列之PHPCPD

PHPCPD 用于检测重复代码,直观的说就是复制粘贴再轻微改改
该工具作者已经 停止维护
安装

composer global require --dev sebastian/phpcpd
执行

phpcpd --log-pmd phpcpd_result.xml ./app
   参数先容 --log-pmd 将结果生存在phpcpd_result.xml 中
./app 是phpcpd扫描的项目目录
–suffix 指定扫描的文件后缀,可以出现多次以便指定多个后缀
–exclude 无需扫描的路径,也可出现多次指定多个路径
结果

标明那个文件的多少行到多少行是重复的
https://img-blog.csdnimg.cn/direct/18a975f20b36435da562c139c912f0f7.png
Jenkins中的使用

在项目构建步骤中增长 执行shell
#执行phpcpdif `docker exec phpfpm82 /tmp/composer/vendor/bin/phpcpd >/dev/null 2>&1`; thenecho '开始执行phpcpd'elsedocker exec phpfpm82 composer global require --dev sebastian/phpcpd
fidocker exec phpfpm82 /bin/sh -c "cd /var/www/workspace/$JOB_NAME/ && /tmp/composer/vendor/bin/phpcpd --log-pmd reports/phpcpd_result.xml ./app" 可视化结果

jenkins插件 DRY 已经停止下载,所以没有可视化的界面可用,具体见 https://plugins.jenkins.io/dry/
看到这里了,点个赞再走吧
PHP质量工具系列

PHP/JS质量工具,安全工具,Jenkins插件 总结
TOP 6 PHP代码质量工具
PHP质量工具系列之php-depend
PHP质量工具系列之phpmd
PHP质量工具系列之phpcpd
PHP质量工具系列之phploc
PHP质量工具系列之paslm
PHP质量工具系列之phpstan
PHP质量工具系列之Owasp dependency-check
PHP质量工具系列之php_codesniffer
PHP质量工具系列之phpunit
PHP质量工具系列之xhprof
SBOM天生之CycloneDX
CI/CD之Jenkins插件使用系列

jenkins插件之Jdepend
jenkins插件之plot
jenkins插件之dependency-check
jenkins插件之Warnings
jenkins插件之xunit

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: php质量工具系列之PHPCPD