CN109710519A - 项目差异报告生成方法、装置、计算机设备及存储介质 - Google Patents

项目差异报告生成方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN109710519A
CN109710519A CN201811528658.4A CN201811528658A CN109710519A CN 109710519 A CN109710519 A CN 109710519A CN 201811528658 A CN201811528658 A CN 201811528658A CN 109710519 A CN109710519 A CN 109710519A
Authority
CN
China
Prior art keywords
file
subfile
version item
filename
item 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.)
Pending
Application number
CN201811528658.4A
Other languages
English (en)
Inventor
段林
杨小彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201811528658.4A priority Critical patent/CN109710519A/zh
Publication of CN109710519A publication Critical patent/CN109710519A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种项目差异报告生成方法、装置、计算机设备及存储介质,首先通过获取新版本项目文件和旧版本项目文件,其次确定新版本项目文件和旧版本项目文件中每个子文件的文件路径名和文件名,再比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到差异信息块,然后将差异信息块和差异信息块对应的文件路径名进行关联;根据已进行关联的所有差异信息块生成差异文档;根据差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录,最后将差异文档和文件目录关联,生成项目差异报告。

Description

项目差异报告生成方法、装置、计算机设备及存储介质
技术领域
本申请涉及代码质量管理领域,尤其涉及一种项目差异报告生成方法、装置、计算机设备及存储介质。
背景技术
随着网络科技的不断发展,研发人员需要对线上的各类网站、软件或者平台进行版本的更新,以适应网络科技的不断发展。然而,版本的更新必然会涉及到网站、软件或者平台的代码修改。为了确保修改的代码没有漏洞,通常会有检视人员对修改的代码进行检查。传统上的做法通常是直接提取版本管理工具中的提交记录进行检查,然而版本管理工具中的提交记录通常时零散的,因此检查起来耗时大,效率低,操作不简便。
发明内容
本申请实施例提供一种项目差异报告生成方法、装置、计算机设备及存储介质,以降低项目检查的耗时,提高项目检查效率,简化项目检查步骤,使得项目检查过程操作更加简便。
一种项目差异报告生成方法,包括:
获取新版本项目文件和旧版本项目文件,所述新版本项目文件包括多个子文件,所述旧版本项目文件包括多个子文件;
确定所述新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
比较所述每一个相同文件路径名下,文件名相同的所述新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中所述差异信息块是指相同文件路径名下,文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件中,存在差异的代码模块;
将所述差异信息块和所述差异信息块对应的文件路径名进行关联;
根据已进行所述关联的所有差异信息块生成差异文档;
根据所述差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
将所述差异文档和所述文件目录关联,生成项目差异报告。
一种项目差异报告生成装置,包括:
项目文件获取模块,用于获取新版本项目文件和旧版本项目文件,所述新版本项目文件包括多个子文件,所述旧版本项目文件包括多个子文件;
路径名确定模块,用于确定所述新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
差异比较模块,用于比较所述每一个相同文件路径名下,文件名相同的所述新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中所述差异信息块是指相同文件路径名下,文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件中,存在差异的代码模块;
差异信息块关联模块,用于将所述差异信息块和所述差异信息块对应的文件路径名进行关联;
差异文档生成模块,用于根据已进行所述关联的所有差异信息块生成差异文档;
文件目录生成模块,用于根据所述差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
项目差异报告生成模块,用于将所述差异文档和所述文件目录关联,生成项目差异报告。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述项目差异报告生成方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述项目差异报告生成方法的步骤。
上述项目差异报告生成方法、装置、计算机设备及存储介质所实现的方案中,通过生成一份直观的,便于浏览查阅的项目差异报告来降低检查的耗时,提高检查效率,简化检查步骤,使得检查过程操作更加简便。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例中项目差异报告生成方法的一应用环境示意图;
图2是本申请一实施例中项目差异报告生成方法的一流程图;
图3是本申请一实施例中项目差异报告生成方法的一示例图;
图4是本申请一实施例中项目差异报告生成方法的一示例图;
图5是本申请一实施例中项目差异报告生成方法的一示例图;
图6是本申请一实施例中项目差异报告生成方法的一示例图;
图7是本申请一实施例中项目差异报告生成方法的一示例图;
图8是本申请一实施例中项目差异报告生成装置的一示意图;
图9是本申请一实施例中项目差异报告生成装置的一示意图;
图10是本申请一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的项目差异报告生成方法,可应用在如图1的应用环境中,其中,计算机设备通过网络与服务器进行通信。计算机设备获取新版本项目文件和旧版本项目文件,通过比较新版本项目文件和旧版本项目文件的差异等一系列操作,生成一份项目差异报告。其中,计算机设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种项目差异报告生成方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S10:获取新版本项目文件和旧版本项目文件,新版本项目文件包括多个子文件,旧版本项目文件包括多个子文件。
其中,新版本项目文件是指即将要投入使用的项目的文件包,新版本项目文件里的内容是对用户正在使用的项目文件包(即旧版本项目文件)再开发后(比如增加、删除或者修改一些内容),产生一个准备上线的项目文件。新版本项目文件由多个子文件组成。旧版本项目文件是指已经上线,且用户正在使用的项目文件包。旧版本项目文件由多个子文件组成。例如,新版本项目文件中包含kol_online、sub_online等子文件,而kol_online子文件中又包含index.html、main.js等子文件。
具体地,当接收到项目检查请求时,获取新版本项目文件和旧版本项目文件,新版本项目文件包括多个子文件,旧版本项目文件包括多个子文件。
S20:确定新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名。
具体地,通过新版本项目文件的子文件之间的包含关系确定新版本项目文件中的每个子文件的文件路径名以及文件名;通过旧版本项目文件的子文件之间的包含关系确定旧版本项目文件中的每个子文件的文件路径名以及文件名。例如,新版本项目文件中pack文件夹下包含下kol_onlin文件夹,而kol_onlin文件夹下又包含index.html、main.js子文件,则根据该包含关系得出新版本项目文件中,子文件的文件路径名为:/pack/kol_online/,文件名为index.html、main.js。
S30:比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中差异信息块是指相同文件路径名下,文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件中,存在差异的代码模块。
其中,差异信息块是指相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件中存在差异的代码模块。例如,新版本项目文件文件中路径为/pack/kol_online/下文件名为index.html的文件的第5-6行的内容和旧版本项目文件文件中路径为/pack/kol_online/下文件名为index.html的文件第5-10行的内容不一样,则将新版本项目文件文件第5-6行和旧版本项目文件文件的第5-10行组成一个差异信息块。
具体地,可以采用对比工具来比较比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异。
在该实施例中,通过比较相同文件路径名下文件名相同的新旧版本的项目文件之间的差异,能够获得整个项目文件的差异信息,提高了对项目文件进行检查时的可读性,简化了对项目文件进行检查时的步骤。
S40:将差异信息块和差异信息块对应的文件路径名进行关联。
可选地,将差异信息块和差异信息块所对应的文件路径名进行关联,关联的方式可以是为差异信息块添加一个标识,标识的内容为该差异信息块对应的文件路径名。
可选地,将差异信息块和差异信息块所对应的文件路径名进行关联,关联的方式可以是为差异信息块添加一个超链接,超链接所指向的位置为该差异信息块对应的文件路径名。
S50:根据已进行关联的所有差异信息块生成差异文档。
其中,差异文档是反映新版本项目文件和旧版本项目文件之间的整体差异的文档,差异文档包括差异信息块以及差异信息块所对应的路径名和文件名,差异信息块反映了新版本项目文件和旧版本项目文件之间的差异的内容,差异信息块所对应的文件路径名和文件名反映了新版本项目文件和旧版本项目文件之间的差异的位置。
具体地,根据已进行差异信息块和差异信息块对应的文件路径名关联的所有差异信息块生成差异文档。例如,已进行关联的差异信息块有:
/pack/kol_online/index.html→第4-6行修改为第3-7行;
/pack/kol_online/main.js→第34-38行修改为第34-37行;
则根据上述差异信息块生成差异文档:
/pack/kol_online/index.html→第4-6行修改为第3-7行;
main.js→第34-38行修改为第34-37行;
其中,“/pack/kol_online/”为差异信息块所对应的路径名;“index.html”和“main.js”为差异信息块所对应的文件名;“第4-6行修改为第3-7行”和“第34-38行修改为第34-37行”为差异信息块内容,该内容可以为项目的代码、文本等。
在该实施例中,根据已进行关联的所有差异信息块生成差异文档,将原本零散的差异信息块进行整合,得到一份完整的反映出新版本项目文件和旧版本项目文件之间的差异的文档,化零为整,便于检查人员对整个项目文件进行整理和检查,可读性强。
S60:根据差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录。
具体地,提取差异文档中的所有差异信息块对应的文件名和文件路径名,根据提取出来的差异文档中的所有差异信息块对应和文件路径之间的包含关系生成文件目录。例如,index.html包含在/pack/kol_online/路径中,则生成的文件目录为:/pack/kol_online/index.html。
S70:将差异文档和文件目录关联,生成项目差异报告。
具体地,将文件目录作为链接,差异文档中的差异信息块作为链接跳转进入的内容进行关联,生成一份项目差异报告。
例如,关联后的项目差异报告的文档目录为/pack/kol_online/index.html,点击该文档目录就会跳转进入该目录所指向的差异信息块:第4-6行修改为第3-7行。
在该实施例中,通过获取新版本项目文件和旧版本项目文件,在确定该新版本项目文件和旧版本项目文件中的每个子文件的文件路径名和文件名后开始比较新版本项目文件和旧版本项目文件中的每个对应的子文件之间的差异,得到反映这些差异的差异信息块,再将差异信息块与其文件路径名和文件名进行关联生成差异文档和文件目录,最后将差异文档和文件目录进行关联生成一份能够反映不同版本之间的差异的项目差异报告,通过点击项目差异报告的文件目录既可跳转进目录所指向的差异信息块来查看该差异信息块的内容,具有操作简便、可读性强的优点。
在一实施例中,如图3所示,步骤S30中,即比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,具体包括如下步骤:
S31:判断每一个相同文件路径名下是否存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件。
具体地,判断每一个相同文件路径名下是否存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件,若只存在新版本项目文件的子文件,则证明该新版本项目文件的子文件相对与旧版本项目文件的子文件来说是新增的;若只存在旧版本项目文件的子文件,则证明该旧版本项目文件的子文件相对与新版本项目文件的子文件来说是被删除了。
S32:若相同文件路径名下存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件,则比较相同文件路径名下,文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件的差异,将每一差异部分作为一个差异信息块。
具体地,若相同文件路径名下存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件,则比较相同文件路径名下存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件差异,根据比较结果将每一差异部分作为一个差异信息块。例如,比较结果得出,新版本项目文件中,路径名为/pack/kol_online/中,文件名为index.html子文件中的第4-6行与旧版本项目文件中,路径名为/pack/kol_online/中,文件名为index.html子文件中的第3-7行有差异,其余地方的内容都相同,则将新版本项目文件中的第4-6行和旧版本项目文件中第3-7行作为一个差异信息块。
在该实施例中,判断每一个相同文件路径名下是否存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件,根据判断结果生成差异信息块,能够根据不同的情况具体分析,提高项目差异检查的准确性。
在一实施例中,如图4所示,步骤S30中,步骤S30中,即比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,具体还包括如下步骤:
S33:若相同文件路径名下只存在新版本项目文件的子文件,则将新版本项目文件的子文件作为一个差异信息块。
具体地,若相同文件路径名下只存在新版本项目文件的子文件,则证明该新版本项目文件的子文件相对与旧版本项目文件的子文件来说是新增的,因此,将该新版本项目文件的子文件当作一个差异信息块。
S34:若相同文件路径名下只存在旧版本项目文件的子文件,则将旧版本项目文件的子文件作为一个差异信息块。
具体地,若相同文件路径名下只存在旧版本项目文件的子文件,则证明旧版本项目文件的子文件相对与新版本项目文件的子文件说是被删除了,因此,将该旧版本项目文件的子文件当作一个差异信息块。
在该实施例中,根据判断结果对不同情况进行处理,能够提高项目差异检查的准确性。
在一实施例中,如图5所示,步骤S60为:根据差异文档中的所有差异信息块对应的文件名,和文件路径名生成文件目录,具体包括以下步骤:
S61:提取差异文档中所有差异信息块对应的文件名和所有差异信息块对应的文件路径名。
具体地,提取差异文档中所有差异信息块对应的文件名和所有差异信息块对应的文件路径名,若提取出的文件名和文件路径名存在重复的情况,则去掉重复部分的文件名和文件路径名。
S62:根据所有提取出来的差异文档中所有差异信息块对应的文件名,和所有差异信息块对应的文件路径名,生成文件目录。
具体地,根据所有提取出来的差异文档中所有差异信息块对应的文件名,和所有差异信息块对应的文件路径名,生成文件目录。
在一实施例中,如图6所示,步骤S70中,即根据差异文档和文件目录关联,生成项目差异报告,具体包括如下步骤:
S71:获取新版本项目文件的提交记录。
其中,提交记录是指研发人员每一次对版本项目文件进行修改,并上传修改内容到版本管理工具里时,填写注释信息来提示本次修改的内容的一项记录。其中,版本管理工具是一种用于保存项目文件的工具,每次对项目文件进行修改,并提交修改时,版本管理工具都会要求填写本次修改对应的提交记录。常见的版本管理工具一般有Subversion和Git等。
具体地,从版本管理工具中获取新版本项目文件的提交记录。
S72:将差异文档和新版本项目文件的提交纪录进行关联,得到检视信息。
其中,新版本项目文件的提交记录包括被修改的子文件的路径名、文件名、注释信息以及修改行等。
具体地,根据新版本项目文件的提交记录中被修改的文件的路径名、文件名和修改行,将差异文档中对应的差异信息块和新版本项目文件的提交纪录中的注释信息进行关联,得到检视信息,其中检视信息包括检视信息的文件名和检视记录。例如,差异文档中有差异信息块:
/pack/kol_online/index.html→第4-6行修改为第3-7行;
新版本项目文件的提交纪录:
/pack/kol_online/index.html第3-7行新增一个用户确认按钮
其中,“新增一个用户确认按钮”为注释信息。
将差异文档和新版本项目文件的提交纪录进行关联后,得到检视信息:
/pack/kol_online/index.html→第4-6行修改为第3-7行;
本次修改的主要功能是:新增一个用户确认按钮。
其中,“/pack/kol_online/”为检视信息的路径名“index.html”检视信息的文件名,“本次修改的主要功能是:新增一个用户确认按钮”为检视记录。
S73:将检视信息和文件目录进行关联,生成项目差异报告。
具体地,与检视信息的路径名和文件名相同的文件目录作为链接,检视信息作为链接跳转内容进行关联链,生成项目差异报告。在该项目差异报告中,点击文件目录链接,就会跳转进对应的检视信息。
在该实施例中,通过获取新版本项目文件的提交记录,再将差异文档和新版本项目文件的提交纪录进行关联,得到检视信息,最后将检视信息和文件目录进行关联,生成项目差异报告,能够将直观地看到修改后的新版本项目文件的子文件所产生的功能。
在一实施例中,如图7所示,步骤S72中,即将差异文档和新版本项目文件的提交纪录进行关联,得到检视信息,具体包括如下步骤:
S721:以差异文档中的差异信息块对应的文件名为关键字,对提交纪录进行检索,检索出关键字所对应的提交记录,其中,关键字所对应的提交记录包括注释信息。
具体地,以差异文档中的差异信息块对应的文件名为关键字,对获取来的所有提交记录进行检索,检索出关键字所对应的提交记录,该提交记录包括被修改的子文件的路径名、文件名以及注释信息等。
S722:将差异文档的子文件所对应差异信息块和检索出关键字所对应的提交记录的注释信息进行关联,得到检视信息。
具体地,将检索出关键字所对应的提交记录中的被修改的子文件的路径名、文件名,和差异文档的子文件的路径名和文件名相同的提交记录的注释信息与差异信息块进行关联,得到检视信息。例如,将检索出关键字所对应的提交记录中的被修改的子文件的路径名、文件名,和差异文档的子文件的路径名和文件名相同的提交记录的注释信息内容为:新增一个绿色按钮。
差异信息块的内容为:第4-6行修改为第3-7行(“第4-6行”和“第3-7行”为实际代码内容)
与差异信息块进行关联后,得到的检视信息为:
/pack/kol_online/index.html→第4-6行修改为第3-7行;
本次修改的主要功能是:新增一个用户确认按钮。
在该实施例中,以差异文档中的差异信息块对应的文件名为关键字,对提交纪录进行检索,检索出关键字所对应的提交记录,将差异文档的子文件所对应差异信息块和检索出关键字所对应的提交记录的注释信息进行关联,得到检视信息,以差异文档中的差异信息块对应的文件名为关键字,对提交纪录进行检索,节省了查询提交记录的时间,提高了项目检查速率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在一实施例中,提供一种项目差异报告生成装置,该项目差异报告生成装置与上述实施例中项目差异报告生成方法一一对应。如图8所示,该项目差异报告生成装置包括项目文件获取模块10、路径名确定模块20、差异比较模块30、差异信息块关联模块40、差异文档生成模块50、文件目录生成模块60和项目差异报告生成模块70。各功能模块详细说明如下:
项目文件获取模块10,用于获取新版本项目文件和旧版本项目文件,新版本项目文件包括多个子文件,旧版本项目文件包括多个子文件;
路径名确定模块20,用于确定新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
差异比较模块30,用于比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中差异信息块是指相同文件路径名下,文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件中,存在差异的代码模块;
差异信息块关联模块40,用于将差异信息块和差异信息块对应的文件路径名进行关联;
差异文档生成模块50,用于根据已进行关联的所有差异信息块生成差异文档;
文件目录生成模块60,用于根据差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
项目差异报告生成模块70,用于将差异文档和文件目录关联,生成项目差异报告。
可选地,本差异比较模块30还包括:判断单元和比较单元。
判断单元,用于判断每一个相同文件路径名下是否存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件;
比较单元,用于若相同文件路径名下存在文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件,则比较相同文件路径名下,文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件的差异,将每一差异部分作为一个差异信息块。
可选地,本差异比较模块30还可以用于:
若相同文件路径名下只存在新版本项目文件的子文件,则将新版本项目文件的子文件作为一个差异信息块;
若相同文件路径名下只存在旧版本项目文件的子文件,则将旧版本项目文件的子文件作为一个差异信息块。
可选地,本文件目录生成模块60还包括提取单元和生成单元。
提取单元,用于提取差异文档中所有差异信息块对应的文件名和所有差异信息块对应的文件路径名;
生成单元,用于根据所有提取出来的差异文档中所有差异信息块对应的文件名,和所有差异信息块对应的文件路径名,生成文件目录。
可选地,如图9所示,本项目差异报告生成模块70还包括:提交记录获取单元71、提交纪录关联单元72和文件目录关联单元73。
提交记录获取单元71,用于获取新版本项目文件的提交记录;
提交纪录关联单元72,用于将差异文档和新版本项目文件的提交纪录进行关联,得到检视信息;
文件目录关联单元73,用于将检视信息和文件目录进行关联,生成项目差异报告。
关于项目差异报告生成装置的具体限定可以参见上文中对于项目差异报告生成方法的限定,在此不再赘述。上述项目差异报告生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部服务器通过网络连接通信。该计算机程序被处理器执行时以实现一种项目差异报告生成方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取新版本项目文件和旧版本项目文件,新版本项目文件包括多个子文件,旧版本项目文件包括多个子文件;
确定新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中差异信息块是指相同文件路径名下,文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件中,存在差异的代码模块;
将差异信息块和差异信息块对应的文件路径名进行关联;
根据已进行关联的所有差异信息块生成差异文档;
根据差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
将差异文档和文件目录关联,生成项目差异报告。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取新版本项目文件和旧版本项目文件,新版本项目文件包括多个子文件,旧版本项目文件包括多个子文件;
确定新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
比较每一个相同文件路径名下,文件名相同的新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中差异信息块是指相同文件路径名下,文件名相同的新版本项目文件的子文件和旧版本项目文件的子文件中,存在差异的代码模块;
将差异信息块和差异信息块对应的文件路径名进行关联;
根据已进行关联的所有差异信息块生成差异文档;
根据差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
将差异文档和文件目录关联,生成项目差异报告。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围内。

Claims (10)

1.一种项目差异报告生成方法,其特征在于,包括:
获取新版本项目文件和旧版本项目文件,所述新版本项目文件包括多个子文件,所述旧版本项目文件包括多个子文件;
确定所述新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
比较所述每一个相同文件路径名下,文件名相同的所述新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中所述差异信息块是指相同文件路径名下,文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件中,存在差异的代码模块;
将所述差异信息块和所述差异信息块对应的文件路径名进行关联;
根据已进行所述关联的所有差异信息块生成差异文档;
根据所述差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
将所述差异文档和所述文件目录关联,生成项目差异报告。
2.如权利要求1所述的项目差异报告生成方法,其特征在于,所述比较所述每一个相同文件路径名下,文件名相同的所述新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,包括:
判断每一个相同文件路径名下是否存在文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件;
若相同文件路径名下存在文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件,则比较相同文件路径名下,文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件的差异,将每一差异部分作为一个差异信息块。
3.如权利要求2所述的项目差异报告生成方法,其特征在于,
若相同文件路径名下只存在所述新版本项目文件的子文件,则将所述新版本项目文件的子文件作为一个差异信息块;
若相同文件路径名下只存在所述旧版本项目文件的子文件,则将所述旧版本项目文件的子文件作为一个差异信息块。
4.如权利要求1所述的项目差异报告生成方法,其特征在于,所述根据所述差异文档中的所有差异信息块对应的文件名,和所述文件路径名生成文件目录,包括:
提取所述差异文档中所有差异信息块对应的文件名和所述所有差异信息块对应的文件路径名;
根据所述所有提取出来的差异文档中所有差异信息块对应的文件名,和所述所有差异信息块对应的文件路径名,生成文件目录。
5.如权利要求1所述的项目差异报告生成方法,其特征在于,所述根据所述差异文档和所述文件目录关联,生成项目差异报告,包括:
获取所述新版本项目文件的提交记录;
将所述差异文档和所述新版本项目文件的提交纪录进行关联,得到检视信息;
将所述检视信息和所述文件目录进行关联,生成项目差异报告。
6.如权利要求5所述的项目差异报告生成方法,其特征在于,所述将所述差异文档和所述新版本项目文件的提交纪录进行关联,得到检视信息,包括:
以所述差异文档中的差异信息块对应的文件名为关键字,对所述提交纪录进行检索,检索出关键字所对应的提交记录,其中,所述关键字所对应的提交记录包括注释信息;
将所述差异文档的子文件所对应差异信息块和所述检索出关键字所对应的提交记录的注释信息进行关联,得到所述检视信息。
7.一种项目差异报告生成装置,其特征在于,包括:
项目文件获取模块,用于获取新版本项目文件和旧版本项目文件,所述新版本项目文件包括多个子文件,所述旧版本项目文件包括多个子文件;
路径名确定模块,用于确定所述新版本项目文件和旧版本项目文件中每个子文件的文件路径名和每个子文件的文件名;
差异比较模块,用于比较所述每一个相同文件路径名下,文件名相同的所述新版本项目文件和旧版本项目文件的子文件的差异,得到每个相同文件路径名下,文件名相同的子文件之间的差异信息块,其中所述差异信息块是指相同文件路径名下,文件名相同的所述新版本项目文件的子文件和所述旧版本项目文件的子文件中,存在差异的代码模块;
差异信息块关联模块,用于将所述差异信息块和所述差异信息块对应的文件路径名进行关联;
差异文档生成模块,用于根据已进行所述关联的所有差异信息块生成差异文档;
文件目录生成模块,用于根据所述差异文档中的所有差异信息块对应的文件名和文件路径名生成文件目录;
项目差异报告生成模块,用于将所述差异文档和所述文件目录关联,生成项目差异报告。
8.如权利要求6所述的项目差异报告生成装置,其特征在于,所述项目差异报告生成模块包括:
提交记录获取单元,用于获取所述新版本项目文件的提交记录;
提交纪录关联单元,用于将所述差异文档和所述新版本项目文件的提交纪录进行关联,得到检视信息;
文件目录关联单元,用于将所述检视信息和所述文件目录进行关联,生成项目差异报告。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6一项所述项目差异报告生成方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述项目差异报告生成方法。
CN201811528658.4A 2018-12-13 2018-12-13 项目差异报告生成方法、装置、计算机设备及存储介质 Pending CN109710519A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811528658.4A CN109710519A (zh) 2018-12-13 2018-12-13 项目差异报告生成方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811528658.4A CN109710519A (zh) 2018-12-13 2018-12-13 项目差异报告生成方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN109710519A true CN109710519A (zh) 2019-05-03

Family

ID=66256389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811528658.4A Pending CN109710519A (zh) 2018-12-13 2018-12-13 项目差异报告生成方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN109710519A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111753517A (zh) * 2020-06-30 2020-10-09 北京来也网络科技有限公司 基于rpa及ai的文档对比方法、装置、设备及介质
CN112633856A (zh) * 2020-12-31 2021-04-09 中国农业银行股份有限公司 一种基于工作项的数据处理方法及装置
CN113435177A (zh) * 2021-07-14 2021-09-24 上海浦东发展银行股份有限公司 目标码文件包的比对方法、装置、设备、介质及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102214243A (zh) * 2011-07-07 2011-10-12 中国科学院研究生院 Xbrl分类标准版本管理系统
CN104424088A (zh) * 2013-08-21 2015-03-18 腾讯科技(深圳)有限公司 软件的测试方法及装置
CN105843871A (zh) * 2016-03-18 2016-08-10 中国银联股份有限公司 分布式应用文件的控制与管理系统
CN106445476A (zh) * 2015-08-11 2017-02-22 腾讯科技(深圳)有限公司 一种代码变更信息确定方法、装置及电子设备
CN106843914A (zh) * 2017-03-31 2017-06-13 惠州华阳通用电子有限公司 一种软件源代码差异文件提取方法
CN107783780A (zh) * 2017-11-21 2018-03-09 中国银行股份有限公司 一种代码复查方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102214243A (zh) * 2011-07-07 2011-10-12 中国科学院研究生院 Xbrl分类标准版本管理系统
CN104424088A (zh) * 2013-08-21 2015-03-18 腾讯科技(深圳)有限公司 软件的测试方法及装置
CN106445476A (zh) * 2015-08-11 2017-02-22 腾讯科技(深圳)有限公司 一种代码变更信息确定方法、装置及电子设备
CN105843871A (zh) * 2016-03-18 2016-08-10 中国银联股份有限公司 分布式应用文件的控制与管理系统
CN106843914A (zh) * 2017-03-31 2017-06-13 惠州华阳通用电子有限公司 一种软件源代码差异文件提取方法
CN107783780A (zh) * 2017-11-21 2018-03-09 中国银行股份有限公司 一种代码复查方法和系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111753517A (zh) * 2020-06-30 2020-10-09 北京来也网络科技有限公司 基于rpa及ai的文档对比方法、装置、设备及介质
CN112633856A (zh) * 2020-12-31 2021-04-09 中国农业银行股份有限公司 一种基于工作项的数据处理方法及装置
CN113435177A (zh) * 2021-07-14 2021-09-24 上海浦东发展银行股份有限公司 目标码文件包的比对方法、装置、设备、介质及系统

Similar Documents

Publication Publication Date Title
US10642608B2 (en) Associating a visualization of user interface with source code
JP6033235B2 (ja) 類例によるデーターのフォーマット処理
US20160283228A1 (en) Integrated cloud platform translation system
US10176239B2 (en) Automation-assisted curation of technical support information
CN109445842A (zh) 规则生成方法、装置、计算机设备和存储介质
US20130204874A1 (en) Hyper Adapter and Method for Accessing Documents in a Document Base
CN103098051A (zh) 搜索引擎优化助理
CN109710519A (zh) 项目差异报告生成方法、装置、计算机设备及存储介质
CN109308254B (zh) 一种测试方法、装置及测试设备
CN114546868A (zh) 代码覆盖率测试方法、装置和电子设备
CN106445815A (zh) 一种自动化测试方法及装置
CN114238261A (zh) 与旧有工具集成的云原生文档
CN112416710A (zh) 用户操作的记录方法、装置、电子设备及存储介质
Voinea et al. Visual data mining and analysis of software repositories
CN104572439A (zh) 回归警告方法和系统
Kumar et al. Paradigm shift from conventional software quality models to web based quality models
US20180157478A1 (en) Deployment of immutable web application builds
CN109697141B (zh) 用于可视化测试的方法及装置
CN109634500B (zh) 一种用户资料填写方法、装置、终端设备及存储介质
CN113360517A (zh) 数据处理方法、装置、电子设备及存储介质
US10303579B2 (en) Debug session analysis for related work item discovery
JP2013037580A (ja) 情報処理装置
JP4903279B2 (ja) 動作検証装置、動作検証方法、および動作検証プログラム
KR101737575B1 (ko) 자동 생성된 sql 구문 기반의 데이터 검증 방법 및 장치
JP2020087087A (ja) 修正候補特定プログラム

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190503

WD01 Invention patent application deemed withdrawn after publication