一种基于制造技术

技术编号:39574457 阅读:10 留言:0更新日期:2023-12-03 19:26
本发明专利技术公开了一种基于

【技术实现步骤摘要】
一种基于git的代码自动检测方法


[0001]本专利技术涉及软件开发
,具体的说,是一种基于
git
的代码自动检测方法


技术介绍

[0002]git
是一款分布式源代码管理工具
(
版本控制工具
)
,通过
git
实现多人共同维护一个代码工程,从而大大提高了软件开发效率

但用户的每一次提交,有可能为代码引入新的错误,而如果用户每次提交前都对代码进行自检,则会降低用户的开发效率

另外用户通过人工自检,往往难以发现自己编写的代码错误
。git
工具的代码审核机制,以及后续的软件测试,一定程度上可以减少此类错误

但这又依赖审核人员和测试人员的能力和经验,存在不可控因素

而代码存在遗漏错误的产品出现在用户手里,如果在使用过程中出现问题,那解决成本比开发阶段大的多

常见的静态代码检测工具和系统,存在以下缺点:
[0003]1,需要用户手动使用静态代码检测工具进行代码检测,增加了工作量

[0004]2,无法确定代码是否经过工具检测

检测发现的错误是否完成了修改,整个过程无法监督,存在隐患

[0005]3,代码上传后,审核人员使用静态代码检测工具进行检测,会增加审核人员工作量,拉长整个代码提交流程,降低工作效率

[0006]4,检测结果没有保存,不利于审核人员检查,以后发生问题时无法进行问题溯源


技术实现思路

[0007]为了解决上述技术问题,本专利技术提供一种基于
git
的代码自动检测方法,实现了用户正常使用
git
提交代码过程中,在后台自动进行代码检测,上传检测结果并在
commit

msg(
提交注释
)
中增加代码检测结果信息供代码审核人员检查

整个过程中用户只需要进行正常的
git
代码开发和提交流程即可,无需额外的工作量

[0008]本专利技术通过下述技术方案解决上述问题:
[0009]一种基于
git
的代码自动检测方法,包括:
[0010]步骤
A、
用户使用
git clone
命令下载
git
代码工程;
[0011]步骤
B、
用户本地进行代码开发编写;
[0012]步骤
C、
用户使用
git commit
命令提交代码;
[0013]步骤
D、
触发静态代码检测工具,自动进行代码检测;
[0014]步骤
E、
输出检测结果到文件;
[0015]步骤
F、
用户判断检测结果,是否需要重新修改代码,如果需要跳转到步骤
G
,如果不需要修改,跳转到步骤
H

[0016]步骤
G、
修改检测出的代码错误,跳转到步骤
C
重新执行代码提交;
[0017]步骤
H、
用户使用
git push
命令上传代码;
[0018]步骤
I、
触发检测结果自动上传到存储服务器,自动修改提交注释
commit

msg
增加检测结果信息;
[0019]步骤
J、
检测结果纳入
nginx
软件管控,用于供在线访问查看;
[0020]步骤
K、
审核人员对代码及检测结果进行审核,如果审核不通过,跳转到步骤
G
;如果审核通过,执行代码入库

[0021]所述步骤
D
中触发静态代码检测工具的方式为:
[0022]在
git
代码工程的“.git/hooks”目录预置
post

commit
脚本,通过用户的代码提交命令
git commit
触发
post

commit
脚本运行,
post

commit
脚本自动获取到本次提交的文件列表,然后调用静态代码检测工具对文件列表进行检测

[0023]所述步骤
E
中输出检测结果到文件的方法为:将步骤
D
中静态代码检测工具对文件列表的检测结果自动保存到一个文本文件中,文件名命名格式为:
check_file_result_“代码语言”_“年
.

.
日”_“时分秒”.txt。
[0024]所述步骤
I
中触发检测结果自动上传到存储服务器的方式为:在
git
代码工程的“.git/hooks”目录预置
pre

post
脚本,通过用户的代码上传命令
git push
触发
pre

post
脚本运行,
pre

post
脚本通过
ftp
或者
curl
命令,自动将检测结果上传到存储服务器

[0025]所述步骤
J
具体包括:在存储服务器中安装
nginx
软件,把检测结果目录配置为
nginx
可访问目录,实现在浏览器上直接通过
url
地址访问检测结果了,检测结果
url
地址格式为:
http://
服务器
ip:
端口
/
检测结果存储目录
/
检测结果文件名

[0026]所述静态代码检测工具预置方式为:将静态代码检测工具的可执行文件直接预置在系统的
/usr/bin
目录下,通过
chmod 755
修改为可执行权限,实现
post

commit
脚本调用静态代码检测工具进行代码检测

[0027]本专利技术与现有技术相比,具有以下优点及有益效果:
[0028](1)
本专利技术实现在用户正常
git
提交代码的过程中后台自动检测代码,并且可以自动上传检测结果和在
git

commit

msg(
提交注释
)
增加检测结果信息,用户能够根据检测结果修改代码直到检测工具无风险项本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于
git
的代码自动检测方法,其特征在于,包括:步骤
A、
用户使用
git clone
命令下载
git
代码工程;步骤
B、
用户本地进行代码开发编写;步骤
C、
用户使用
git commit
命令提交代码;步骤
D、
触发静态代码检测工具,自动进行代码检测;步骤
E、
输出检测结果到文件;步骤
F、
用户判断检测结果,是否需要重新修改代码,如果需要跳转到步骤
G
,如果不需要修改,跳转到步骤
H
;步骤
G、
修改检测出的代码错误,跳转到步骤
C
重新执行代码提交;步骤
H、
用户使用
git push
命令上传代码;步骤
I、
触发检测结果自动上传到存储服务器,自动修改提交注释
commit

msg
增加检测结果信息;步骤
J、
检测结果纳入
nginx
软件管控,用于供在线访问查看;步骤
K、
审核人员对代码及检测结果进行审核,如果审核不通过,跳转到步骤
G
;如果审核通过,执行代码入库
。2.
根据权利要求1所述的一种基于
git
的代码自动检测方法,其特征在于,所述步骤
D
中触发静态代码检测工具的方式为:在
git
代码工程的“.git/hooks”目录预置
post

commit
脚本,通过用户的代码提交命令
git commit
触发
post

commit
脚本运行,
post

commit
脚本自动获取到本次提交的文件列表,然后调用静态代码检测工具对文件列表进行检测
。3.
根据权利要求1所述的一种基于
git
的...

【专利技术属性】
技术研发人员:鄢波陈艳周海林杜煊
申请(专利权)人:四川九州电子科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1