CN109710510B - 代码提交方法、装置、设备及可读存储介质 - Google Patents
代码提交方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN109710510B CN109710510B CN201810952259.4A CN201810952259A CN109710510B CN 109710510 B CN109710510 B CN 109710510B CN 201810952259 A CN201810952259 A CN 201810952259A CN 109710510 B CN109710510 B CN 109710510B
- Authority
- CN
- China
- Prior art keywords
- code
- type
- file
- replaced
- code file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种代码提交方法、装置、设备及可读存储介质,所述代码提交方法包括:当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。本发明解决现有技术中代码易未经审核提交而造成应用潜在风险增大的技术问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种代码提交方法、装置、设备及可读存储介质。
背景技术
在应用开发过程中,开发人员常常需要将代码文件提交给提交人员审核,提交人员审核完成后,再将代码文件进行提交,然而,目前,新人开发人员等常常会直接提交代码文件,而不是提交给提交人员审核后再提交,尽管未经审核的新提交的代码文件暂时可能不会影响应用的运行,但增加了隐藏的风险。
发明内容
本发明的主要目的在于提供一种代码提交方法、装置、设备及可读存储介质,旨在解决现有技术中代码易未经审核提交而造成应用潜在风险增大的技术问题。
为实现上述目的,本发明提供一种代码提交方法,所述代码提交方法包括:
当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
可选地,所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
获取所述目标代码文件的第一类关键字与第一类代码总量,并获取所述待替换文件的第二类关键字与第二类代码总量;
比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量;
判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化。
可选地,所述判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化步骤包括:
判断所述第一类关键字与第二类关键字的数目或者类型是否不同,当所述第一类关键字与第二类关键字的数目或者类型不同时,判定所述第一类关键字与第二类关键字发生预设特征变化;
通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比;
当所述所述字节变化值对应的变化百分比大于预设百分比时,判定所述第一类代码总量与第二类代码总量发生预设特征变化。
可选地,所述通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比步骤包括:
识别并剔除所述目标代码文件与待替换代码文件中存在的空格字节;
比对所述剔除空格字节后的所述目标代码文件与待替换代码文件,当所述剔除空格字节后的目标代码文件与待替换代码文件对应相同标识位置处的字节不同时,则判定对应字节发生变化;
获取所述发生变化的字节的总数目,计算所述发生变化的字节的总数目占待替换代码文件中字节数目的变化百分比,判断所述变化百分比是否大于预设百分比。
可选地,所述暂停代码提交,并生成暂停提交的提示信息步骤之后还包括:
获取预存的提交管理人员的邮件地址,并基于该邮件地址生成目标提示邮件,其中,所述目标提示邮件包括所述提示信息;
获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理。
可选地,所述获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理步骤包括:
当所述变化百分比大于第一预设值时,对所述目标提示邮件进行黄色特征标记处理;
当所述变化百分比大于第二预设值时,对所述目标提示邮件进行红色特征标记处理;
当所述变化百分比大于第三预设值时,对所述目标提示邮件进行蓝色特征标记处理,其中,所述第一预设值小于第二预设值,所述第二预设值小于第三预设值。
可选地,所述待替换文件以及目标代码文件包括关键字,所述关键字包括最大线程数;
所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
比对所述待替换文件以及目标代码文件的最大线程数,当待替换文件以及目标代码文件的最大线程数不同时,判定所述目标代码文件与待替换代码文件发生预设特征变化,当待替换文件以及目标代码文件的最大线程数相同时,判定所述目标代码文件与待替换代码文件未发生预设特征变化。
本发明还提供一种代码提交装置,所述代码提交装置包括:
接收模块,用于当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对模块,用于比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
暂停模块,用于当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
可选地,所述比对模块包括:
获取子模块,用于获取所述目标代码文件的第一类关键字与第一类代码总量,并获取所述待替换文件的第二类关键字与第二类代码总量;
第一比对子模块,用于比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量;
判断子模块,用于判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化。
可选地,所述判断子模块包括:
第一判断单元,用于判断所述第一类关键字与第二类关键字的数目或者类型是否不同,当所述第一类关键字与第二类关键字的数目或者类型不同时,判定所述第一类关键字与第二类关键字发生预设特征变化;
第二判断单元,用于通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比;
判定单元,用于当所述所述字节变化值对应的变化百分比大于预设百分比时,判定所述第一类代码总量与第二类代码总量发生预设特征变化。
可选地,所述第二判断单元包括:
识别子单元,用于识别并剔除所述目标代码文件与待替换代码文件中存在的空格字节;
比对子单元,用于比对所述剔除空格字节后的所述目标代码文件与待替换代码文件,当所述剔除空格字节后的目标代码文件与待替换代码文件对应相同标识位置处的字节不同时,则判定对应字节发生变化;
获取子弹元,用于获取所述发生变化的字节的总数目,计算所述发生变化的字节的总数目占待替换代码文件中字节数目的变化百分比,判断所述变化百分比是否大于预设百分比。
可选地,所述代码提交装置还包括:
第一获取模块,用于获取预存的提交管理人员的邮件地址,并基于该邮件地址生成目标提示邮件,其中,所述目标提示邮件包括所述提示信息;
第二获取模块,用于获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理。
可选地,所述第二获取模块包括:
第一标记模块,用于当所述变化百分比大于第一预设值时,对所述目标提示邮件进行黄色特征标记处理;
第二标记模块,用于当所述变化百分比大于第二预设值时,对所述目标提示邮件进行红色特征标记处理;
第三标记模块,用于当所述变化百分比大于第三预设值时,对所述目标提示邮件进行蓝色特征标记处理,其中,所述第一预设值小于第二预设值,所述第二预设值小于第三预设值。
可选地,所述待替换文件以及目标代码文件包括关键字,所述关键字包括最大线程数;
所述比对模块还包括:
第二比对子模块,用于比对所述待替换文件以及目标代码文件的最大线程数,当待替换文件以及目标代码文件的最大线程数不同时,判定所述目标代码文件与待替换代码文件发生预设特征变化,当待替换文件以及目标代码文件的最大线程数相同时,判定所述目标代码文件与待替换代码文件未发生预设特征变化。
此外,为实现上述目的,本发明还提供一种代码提交设备,所述代码提交设备包括:存储器、处理器,通信总线以及存储在所述存储器上的代码提交程序,
所述通信总线用于实现处理器与存储器间的通信连接;
所述处理器用于执行所述代码提交程序,以实现以下步骤:
当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
可选地,所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
获取所述目标代码文件的第一类关键字与第一类代码总量,并获取所述待替换文件的第二类关键字与第二类代码总量;
比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量;
判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化。
可选地,所述判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化步骤包括:
判断所述第一类关键字与第二类关键字的数目或者类型是否不同,当所述第一类关键字与第二类关键字的数目或者类型不同时,判定所述第一类关键字与第二类关键字发生预设特征变化;
通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比;
当所述所述字节变化值对应的变化百分比大于预设百分比时,判定所述第一类代码总量与第二类代码总量发生预设特征变化。
可选地,所述通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比步骤包括:
识别并剔除所述目标代码文件与待替换代码文件中存在的空格字节;
比对所述剔除空格字节后的所述目标代码文件与待替换代码文件,当所述剔除空格字节后的目标代码文件与待替换代码文件对应相同标识位置处的字节不同时,则判定对应字节发生变化;
获取所述发生变化的字节的总数目,计算所述发生变化的字节的总数目占待替换代码文件中字节数目的变化百分比,判断所述变化百分比是否大于预设百分比。
可选地,所述暂停代码提交,并生成暂停提交的提示信息步骤之后还包括:
获取预存的提交管理人员的邮件地址,并基于该邮件地址生成目标提示邮件,其中,所述目标提示邮件包括所述提示信息;
获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理。
可选地,所述获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理步骤包括:
当所述变化百分比大于第一预设值时,对所述目标提示邮件进行黄色特征标记处理;
当所述变化百分比大于第二预设值时,对所述目标提示邮件进行红色特征标记处理;
当所述变化百分比大于第三预设值时,对所述目标提示邮件进行蓝色特征标记处理,其中,所述第一预设值小于第二预设值,所述第二预设值小于第三预设值。
可选地,所述待替换文件以及目标代码文件包括关键字,所述关键字包括最大线程数;
所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
比对所述待替换文件以及目标代码文件的最大线程数,当待替换文件以及目标代码文件的最大线程数不同时,判定所述目标代码文件与待替换代码文件发生预设特征变化,当待替换文件以及目标代码文件的最大线程数相同时,判定所述目标代码文件与待替换代码文件未发生预设特征变化。
此外,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行以用于:
当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
本发明通过当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。在本申请中,新增代码提交风险规避流程,即在代码文件提交前,将目标代码文件与待替换的代码文件进行比对,当目标代码文件与待替换的代码文件存在明显差异时,暂停提交,并进行提示,以确认后再进行提交,因而降低因开发人员直接提交代码文件而造成的代码提交风险,解决了现有技术中代码易未经审核提交而造成应用潜在风险增大的技术问题。
附图说明
图1为本发明代码提交方法第一类实施例的流程示意图;
图2为本发明代码提交方法第二类实施例的流程示意图;
图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种代码提交方法,在本发明代码提交方法的第一类实施例中,所述代码提交方法包括:
当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
参照图1,具体步骤如下:
步骤S10,当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
需要说明的是,本发明代码提交方法应用于代码提交风险评估插件,该代码提交风险评估插件嵌入至管理工具中,实现代码提交管理。
具体地,开发人员在提交代码文件时,一般是对当前应用进行版本的更新,其中,可以通过代码文件的替换实现应用版本的更新。在通过代码文件的替换实现应用版本的更新过程中,在接收到代码文件提交指令时,基于该提交指令获取目标代码文件与待替换代码文件,目标代码文件即是开发人员开发完成后进行应用更新时需要提交的文件,其中,目标代码文件是开发人员已经选好的填充至提交系统中,以待提交的,待替换代码文件是该提交指令对应应用中原有的需要被覆盖的代码文件,其中,通过获取待替换代码文件的名称或者存储地址即可获得完整的待替换代码文件。
步骤S20,比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
在得到待替换文件以及目标代码文件后,需要将待替换文件以及目标代码文件进行比对,比对的目的在于判断所述目标代码文件与待替换代码文件是否发生预设特征变化。其中,参照图2,所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
步骤S21,获取所述目标代码文件的第一类关键字与第一类代码总量,并获取所述待替换文件的第二类关键字与第二类代码总量;
待替换文件以及目标代码文件都是由代码字节构成,另外,待替换文件以及目标代码文件中还可以包括关键字,该关键字可以是对代码文件影响价值大的重要变量,其中,判断变量是否为关键字,主要通过判断该变量是否预先存储在代码文件的关键字库中即是关键字已经被开发人员置于关键字库中,其中,该关键字库中中的关键字可以是最大线程数、并行数目等等。
具体地,在得到目标代码文件以及待替换文件后,通过调用代码字节计算程序分别得到目标代码文件的第一类代码总量,待替换文件的第二类代码总量,并通过查找代码文件的关键字库的方式获取所述目标代码文件的第一类关键字,以及待替换文件的第二类关键字。
步骤S22,比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量;
在得到目标代码文件的第一类关键字与第一类代码总量,待替换文件的第二类关键字与第二类代码总量后,比对第一类关键字与第二类关键字,第一类代码总量与第二类代码总量。具体地,由于关键字是对代码文件影响价值大的重要变量,因而在比对过程中,可以是首先比较目标代码文件与待替换代码文件的关键字,在目标代码文件与待替换代码文件的关键字未不同时,再比对第一类代码总量与第二类代码总量,在目标代码文件与待替换代码文件的关键字不同时,可以不再比对第一类代码总量与第二类代码总量,以节约比对流程。
步骤S23,判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化。
在比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量后,判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化,即只要第一类关键字与第二类关键字、第一类代码总量与第二类代码总量中任一一项发生了预设特征变化,即可认为待替换文件以及目标代码文件发生了预设特征变化。
具体地,所述判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化步骤包括:
步骤A1,判断所述第一类关键字与第二类关键字的数目或者类型是否不同,当所述第一类关键字与第二类关键字的数目或者类型不同时,判定所述第一类关键字与第二类关键字发生预设特征变化;
在本实施例中,当第一类关键字与第二类关键字的数目不同时,如第一类关键字包括5个关键字,第二类关键字包括3个关键字,判定所述第一类关键字与第二类关键字发生预设特征变化,或者当第一类关键字与第二类关键字的类型不同时,判定所述第一类关键字与第二类关键字发生预设特征变化。如第一类关键字中包括最大线程数这个关键字,而第二类关键字中不包括最大线程数但包括并行数目这个关键字,尽管第一类关键字与第二类关键字数目相同,但是具体类型不同,因而判定所述第一类关键字与第二类关键字发生预设特征变化。
步骤A2,通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比;
具体地,通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比步骤包括:
步骤B1,识别并剔除所述目标代码文件与待替换代码文件中存在的空格字节;
在进行比对前,需要调用预存的空格剔除程序段识别并剔除所述目标代码文件与待替换代码文件中存在的空格字节,以便准确比对。
步骤B2,比对所述剔除空格字节后的所述目标代码文件与待替换代码文件,当所述剔除空格字节后的目标代码文件与待替换代码文件对应相同标识位置处的字节不同时,则判定对应字节发生变化;
在剔除空格字节后,比对剔除空格字节后的所述目标代码文件与待替换代码文件,当所述剔除空格字节后的目标代码文件与待替换代码文件对应相同标识位置处的字节不同时,则判定对应字节发生变化,即是比对目标代码文件与待替换代码文件中各个标识位置上如1位置上的具体字节,当1位置上目标代码文件与待替换代码文件中的具体字节不同时,则认为对应字节发生了变化,其中,各个标识位置具体可以是标识为1、2、3、4等的位置,另外,为避免可能存在的错误,在本实施例中,可以分别同时从代码文件的首位位置以及代码文件的末位位置开始比对。
步骤B3,获取所述发生变化的字节的总数目,计算所述发生变化的字节的总数目占待替换代码文件中字节数目的变化百分比,判断所述变化百分比是否大于预设百分比。
通过字节比对方式获取所述发生变化的字节的总数目,计算所述发生变化的字节的总数目占待替换代码文件中字节数目的变化百分比,判断所述变化百分比是否大于预设百分比,该预设百分比可以为20%,其中,预设百分比是预先设定的且可以进行调整的。
步骤A3,当所述所述字节变化值对应的变化百分比大于预设百分比时,判定所述第一类代码总量与第二类代码总量发生预设特征变化。
当所述所述字节变化值对应的变化百分比大于预设百分比时,判定所述第一类代码总量与第二类代码总量发生预设特征变化,当所述所述字节变化值对应的变化百分比小于预设百分比时,判定所述第一类代码总量与第二类代码总量未发生预设特征变化。
步骤S30,当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
在本实施例中,当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息,其中,该提示信息可以以提示框形式发送给提交管理人员,在提交管理人员确认提交后,再进行目标代码文件的提交。
本发明通过当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。在本申请中,新增代码提交风险规避流程,即在代码文件提交前,将目标代码文件与待替换的代码文件进行比对,当目标代码文件与待替换的代码文件存在明显差异时,暂停提交,并进行提示,以确认后再进行提交,因而降低因开发人员直接提交代码文件而造成的代码提交风险,解决了现有技术中代码易未经审核提交而造成应用潜在风险增大的技术问题。
进一步地,本发明提供代码提交方法的另一实施例,在该实施例中,所述暂停代码提交,并生成暂停提交的提示信息步骤之后还包括:
步骤S40,获取预存的提交管理人员的邮件地址,并基于该邮件地址生成目标提示邮件,其中,所述目标提示邮件包括所述提示信息;
在本实施例中,在生成暂停提交的提示信息后,将该暂停提交的提示信息以目标提示邮件提形式发送给交管理人员,其中,需要调用预存的邮件生成程序以获取预存的提交管理人员的邮件地址,以生成目标提示邮件。
步骤S50,获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理。
在生成目标提示邮件后,需要对目标提示邮件进行提示等级的分类,具体地,在本实施例中,根据所述变化百分比的大小进行邮件提示等级的分类,所述获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理步骤包括:
步骤C1,当所述变化百分比大于第一预设值时,对所述目标提示邮件进行黄色特征标记处理;
步骤C2,当所述变化百分比大于第二预设值时,对所述目标提示邮件进行红色特征标记处理;
步骤C3,当所述变化百分比大于第三预设值时,对所述目标提示邮件进行蓝色特征标记处理,其中,所述第一预设值小于第二预设值,所述第二预设值小于第三预设值。
在本实施例中,通过颜色对目标提示邮件进行特征标识处理,其中,第一预设值可以是20%,第二预设值可以是30%,第三预设值可以是60%,用以具体实施例进行说明,在变化百分比大于60%时,对提示邮件进行蓝色标记处理,在变化百分比大于20%小于60%时,对目标提示邮件进行红色标记处理。
在本实施例中,通过获取预存的提交管理人员的邮件地址,并基于该邮件地址生成目标提示邮件,其中,所述目标提示邮件包括所述提示信息;获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理。避免因提交管理人员未及时查看到暂停提交的提示信息而造成的提交不及时的现象。
进一步地,本发明提供代码提交方法的另一实施例,在该实施例中,所述待替换文件以及目标代码文件包括关键字,所述关键字包括最大线程数;
所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
步骤D1,比对所述待替换文件以及目标代码文件的最大线程数,当待替换文件以及目标代码文件的最大线程数不同时,判定所述目标代码文件与待替换代码文件发生预设特征变化,当待替换文件以及目标代码文件的最大线程数相同时,判定所述目标代码文件与待替换代码文件未发生预设特征变化。用以具体实施例进行说明,当关键字为最大线程数目时,若检测到目标代码文件中的最大线程数目为100,待替换代码文件中的最大线程数目为80时,则判定目标代码文件与待替换代码文件相比较,发生了预设特征变化,暂停目标代码文件的提交,并生成提示邮件以提示对应的目标管理人员。若检测到目标代码文件中的最大线程数目为100,待替换代码文件中的最大线程数目为80时判定所述目标代码文件与待替换代码文件未发生预设特征变化。在本实施例中,在所述待替换文件以及目标代码文件的最大线程数具体对应数值不同时,判定所述目标代码文件与待替换代码文件发生预设特征变化。
参照图3,图3是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例代码提交设备可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、便携计算机等终端设备。
如图3所示,该代码提交设备可以包括:处理器1001,例如CPU,存储器1005,通信总线1002。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。
可选地,该代码提交设备还可以包括用户接口、网络接口、摄像头、RF(RadioFrequency,射频)电路,传感器、音频电路、WiFi模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图3中示出的代码提交设备结构并不构成对代码提交设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及代码提交程序。操作系统是管理和控制代码提交设备硬件和软件资源的程序,支持代码提交程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与代码提交设备中其它硬件和软件之间通信。
在图3所示的代码提交设备中,处理器1001用于执行存储器1005中存储的代码提交程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项所述的代码提交方法的步骤。
本发明代码提交设备具体实施方式与上述代码提交方法各实施例基本相同,在此不再赘述。
本发明还提供一种代码提交装置,所述代码提交装置包括:
接收模块,用于当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对模块,用于比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
暂停模块,用于当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
本发明代码提交装置具体实施方式与上述代码提交方法各实施例基本相同,在此不再赘述。
本发明提供了一种可读存储介质,所述可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项所述的代码提交方法的步骤。
本发明可读存储介质具体实施方式与上述代码提交方法各实施例基本相同,在此不再赘述。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利处理范围内。
Claims (9)
1.一种代码提交方法,其特征在于,所述代码提交方法包括:
当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化;
当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息;
所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
获取所述目标代码文件的第一类关键字与第一类代码总量,并获取所述待替换文件的第二类关键字与第二类代码总量;
比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量;
判断所述第一类关键字与第二类关键字是否发生预设特征变化,或判断第一类代码总量与第二类代码总量是否发生预设特征变化,其中,首先比较目标代码文件与待替换代码文件的关键字,在目标代码文件与待替换代码文件的关键字未不同时,再比对第一类代码总量与第二类代码总量,在目标代码文件与待替换代码文件的关键字不同时,可以不再比对第一类代码总量与第二类代码总量,以节约比对流程。
2.如权利要求1所述的代码提交方法,其特征在于,所述判断所述第一类关键字与第二类关键字、或者第一类代码总量与第二类代码总量是否发生预设特征变化步骤包括:
判断所述第一类关键字与第二类关键字的数目或者类型是否不同,当所述第一类关键字与第二类关键字的数目或者类型不同时,判定所述第一类关键字与第二类关键字发生预设特征变化;
通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比;
当所述字节变化值对应的变化百分比大于预设百分比时,判定所述第一类代码总量与第二类代码总量发生预设特征变化。
3.如权利要求2所述的代码提交方法,其特征在于,所述通过字节比对方式获取所述第一类代码总量与第二类代码总量的字节变化值,判断所述字节变化值对应的变化百分比是否大于预设百分比步骤包括:
识别并剔除所述目标代码文件与待替换代码文件中存在的空格字节;
比对所述剔除空格字节后的所述目标代码文件与待替换代码文件,当所述剔除空格字节后的目标代码文件与待替换代码文件对应相同标识位置处的字节不同时,则判定对应字节发生变化;
获取所述发生变化的字节的总数目,计算所述发生变化的字节的总数目占待替换代码文件中字节数目的变化百分比,判断所述变化百分比是否大于预设百分比。
4.如权利要求3所述的代码提交方法,其特征在于,所述暂停代码提交,并生成暂停提交的提示信息步骤之后还包括:
获取预存的提交管理人员的邮件地址,并基于该邮件地址生成目标提示邮件,其中,所述目标提示邮件包括所述提示信息;
获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理。
5.如权利要求4所述的代码提交方法,其特征在于,所述获取并根据所述变化百分比的大小进行邮件提示等级的分类,基于分类后的邮件提示等级对所述目标提示邮件进行对应特征标识处理步骤包括:
当所述变化百分比大于第一预设值时,对所述目标提示邮件进行黄色特征标记处理;
当所述变化百分比大于第二预设值时,对所述目标提示邮件进行红色特征标记处理;
当所述变化百分比大于第三预设值时,对所述目标提示邮件进行蓝色特征标记处理,其中,所述第一预设值小于第二预设值,所述第二预设值小于第三预设值。
6.如权利要求1-5任一项所述的代码提交方法,其特征在于,所述待替换文件以及目标代码文件包括关键字,所述关键字包括最大线程数;
所述比对所述待替换文件以及目标代码文件,判断所述目标代码文件与待替换代码文件是否发生预设特征变化步骤包括:
比对所述待替换文件以及目标代码文件的最大线程数,当待替换文件以及目标代码文件的最大线程数不同时,判定所述目标代码文件与待替换代码文件发生预设特征变化,当待替换文件以及目标代码文件的最大线程数相同时,判定所述目标代码文件与待替换代码文件未发生预设特征变化。
7.一种代码提交装置,其特征在于,所述代码提交装置包括:
接收模块,用于当接收到代码提交指令时,基于该提交指令获取目标代码文件以及待替换文件;
比对模块,用于获取所述目标代码文件的第一类关键字与第一类代码总量,并获取所述待替换文件的第二类关键字与第二类代码总量;比对所述第一类关键字与第二类关键字,第一类代码总量与第二类代码总量;判断所述第一类关键字与第二类关键字是否发生预设特征变化,或判断第一类代码总量与第二类代码总量是否发生预设特征变化,其中,首先比较目标代码文件与待替换代码文件的关键字,在目标代码文件与待替换代码文件的关键字未不同时,再比对第一类代码总量与第二类代码总量,在目标代码文件与待替换代码文件的关键字不同时,可以不再比对第一类代码总量与第二类代码总量,以节约比对流程;
暂停模块,用于当所述目标代码文件与待替换代码文件发生预设特征变化时,暂停代码提交,并生成暂停提交的提示信息。
8.一种代码提交设备,其特征在于,所述代码提交设备包括:存储器、处理器,通信总线以及存储在所述存储器上的代码提交程序,
所述通信总线用于实现处理器与存储器间的通信连接;
所述处理器用于执行所述代码提交程序,以实现如权利要求1至6中任一项所述的代码提交方法的步骤。
9.一种可读存储介质,其特征在于,所述可读存储介质上存储有代码提交程序,所述代码提交程序被处理器执行时实现如权利要求1-6中任一项所述的代码提交方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810952259.4A CN109710510B (zh) | 2018-08-20 | 2018-08-20 | 代码提交方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810952259.4A CN109710510B (zh) | 2018-08-20 | 2018-08-20 | 代码提交方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109710510A CN109710510A (zh) | 2019-05-03 |
CN109710510B true CN109710510B (zh) | 2023-07-21 |
Family
ID=66253676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810952259.4A Active CN109710510B (zh) | 2018-08-20 | 2018-08-20 | 代码提交方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710510B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112035596A (zh) * | 2020-08-31 | 2020-12-04 | 京东数字科技控股股份有限公司 | 文本提交方法、装置、设备及存储介质 |
CN113778478A (zh) * | 2020-11-09 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种生成提示信息的方法、装置和存储介质 |
CN116339818B (zh) * | 2023-05-30 | 2023-10-20 | 荣耀终端有限公司 | 代码变更类型的筛选方法、电子设备及可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106202007A (zh) * | 2016-06-28 | 2016-12-07 | 电子科技大学 | 一种matlab程序文件相似度的评估方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092761B (zh) * | 2013-02-05 | 2015-05-27 | 烽火通信科技股份有限公司 | 基于差异信息文件识别和检查修改代码块的方法及装置 |
CN104063208B (zh) * | 2013-03-21 | 2017-11-17 | 北京百度网讯科技有限公司 | 代码文件的优化方法、系统和服务器 |
CN103677821B (zh) * | 2013-12-05 | 2018-06-12 | 金蝶软件(中国)有限公司 | 软件开发工具代码发布的方法和装置 |
US9946630B2 (en) * | 2016-06-17 | 2018-04-17 | International Business Machines Corporation | Efficiently debugging software code |
CN107368313B (zh) * | 2017-07-18 | 2018-09-11 | 腾讯科技(深圳)有限公司 | 代码检测方法、装置及电子设备 |
-
2018
- 2018-08-20 CN CN201810952259.4A patent/CN109710510B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106202007A (zh) * | 2016-06-28 | 2016-12-07 | 电子科技大学 | 一种matlab程序文件相似度的评估方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109710510A (zh) | 2019-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768875B (zh) | 应用的灰度发布方法、装置及计算机可读存储介质 | |
CN109710510B (zh) | 代码提交方法、装置、设备及可读存储介质 | |
CN109033772B (zh) | 一种验证信息的输入方法及装置 | |
KR20180077265A (ko) | 플러그인화 패키징 방법, 장치, 터미널 및 저장 매체 | |
CN105357204B (zh) | 生成终端识别信息的方法及装置 | |
CN113268336B (zh) | 一种服务的获取方法、装置、设备以及可读介质 | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN109901881B (zh) | 应用程序的插件加载方法、装置、计算机设备及存储介质 | |
CN107870976A (zh) | 简历识别装置、方法及计算机可读存储介质 | |
CN111190603B (zh) | 一种隐私数据检测方法、装置和计算机可读存储介质 | |
CN112052169A (zh) | 测试管理方法、系统、设备以及计算机可读存储介质 | |
CN110267215B (zh) | 一种数据检测方法、设备及存储介质 | |
CN108376110B (zh) | 一种自动检测方法、系统及终端设备 | |
CN112799791A (zh) | 分布式锁的调用方法、装置、电子设备和存储介质 | |
CN106789973B (zh) | 页面的安全性检测方法及终端设备 | |
CN113128168A (zh) | 一种焊盘参数校验校正方法、装置、计算机设备及存储介质 | |
CN108717357B (zh) | 页面展示代码转换方法、装置、设备及计算机存储介质 | |
CN107563188B (zh) | 应用的安全评测方法、装置和计算机存储介质 | |
CN108229975B (zh) | 终端验证的方法、终端设备及计算机可读存储介质 | |
CN113986747A (zh) | 一种数据生成方法、装置、电子设备及存储介质 | |
CN112433935A (zh) | 测试方法、装置、电子设备及存储介质 | |
CN113836032A (zh) | 安卓接口并发测试方法、装置、设备及存储介质 | |
CN112685006A (zh) | 流程管理方法、装置、电子设备及存储介质 | |
CN109684191B (zh) | 应用包构建方法、装置、设备及可读存储介质 | |
CN113297149A (zh) | 数据处理请求的监测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |