| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> GitLab服务端集成CheckStyle实现代码自动审核 -> 正文阅读 |
|
[开发工具]GitLab服务端集成CheckStyle实现代码自动审核 |
1. 概述 对于Git通过Hook实现静态代码检测,大致分为两个方向: 1>借助Client-Side-Hook来实现。 此方法对应于研发人员工作机上的${PROJECT_ROOT}/.git/hooks/pre-commit脚本实现。 2>借助Server-Side-Hook来实现。 此方法分为2个方面,一个是全局性配置(下面会详细介绍),一个是对应对单独项目进行配置,此方法对应于Git服务端的 相比较之下,两种实现方式之中,第二种方式有点更明显,其无需研发人员进行任何的本地操作,这里详细讲解gitlab的全局配置。 3>使用关键组件包括: checkstyle8.17+python2.7.5+jdk1.8 python 的版本不能超过3.0 Jdk 版本最低为1.8 2.操作步骤 2.1:上传文件 登录Gitlab服务 1.创建文件路径,执行命令: mkdir -p /data/gitlab.checkstyle 2.进入文件中 cd /data/gitlab.checkstyle 3.将checkstyle.xml和checkstyle-8.17-all.jar 文件上传到gitlab.checkstyle 4.验证是否正确 可执行命令: java -jar /data/gitlab.checkstyle/checkstyle-8.17-all.jar -c/data/gitlab.checkstyle/checkstyle.xml /data/gitlab.checkstyle/TestController.java 如有些类似输出内容即表示环境正确。 TestController.java文件可自行上传。 checkstyle.xml文件可自行网上查找,可使用谷歌或阿里的都可以。 2.1.配置gitlab全局钩子 1.创建自定义全局钩子目录cd /opt/gitlab/embedded/service/gitlab-shell/ mkdir custom_hooks 2.指定全局自定义钩子目录修改 /etc/gitlab/gitlab.rb 配置文件中的配置项:gitlab_shell['custom_hooks_dir']内容为: /opt/gitlab/embedded/service/gitlab-shell/custom_hooks 原内容为: 修改内容为: vi /etc/gitlab/gitlab.rb 3.使自定义内容生效操作完成后,执行命令使配置生效: sudo gitlab-ctl reconfigure 2.3上传代码规范检查脚本1.进入全局自定义钩子目录下: cd /opt/gitlab/embedded/service/gitlab-shell/custom_hooks 2.创建pre-receive.d文件夹 mkdir pre-receive.d cd pre-receive.d 3.上传附件中的pre-receive文件到pre-receive.d文件目录下并赋予可执行权限 chmod +777 pre-receive 4.pre-receive脚本内容为:
3.验证对于不合规的内容输出异常提示: 如果想了解单独配置和全局配置下想单独排查某项目的步骤,欢迎联系。 以上为全部内容。 欢迎关注10W+的微信公众号: ? 技术难点欢迎咨询,如有需要加我微信:1106915848。 星光不问赶路人,时光不负有心人 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 14:45:04- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |