CN109753289B - 一种美术资源合并方法、装置、电子设备和存储介质 - Google Patents
一种美术资源合并方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN109753289B CN109753289B CN201910032494.4A CN201910032494A CN109753289B CN 109753289 B CN109753289 B CN 109753289B CN 201910032494 A CN201910032494 A CN 201910032494A CN 109753289 B CN109753289 B CN 109753289B
- Authority
- CN
- China
- Prior art keywords
- file
- instruction
- version
- target
- path
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种美术资源合并方法、装置、电子设备和存储介质,其中,所述方法包括:获取目标版本日志;解析所述目标版本日志,获取美术资源变更信息;生成与所述美术资源变更信息对应的可执行文件;采用所述可执行文件,进行美术资源合并。本发明实施例可以实现通过生成与美术资源变更信息对应的可执行文件,当运行可执行文件时,可以运行可执行文件中的指令,进行美术资源合并。
Description
技术领域
本发明涉及数据管理技术领域,特别是涉及一种美术资源合并方法、装置、电子设备和存储介质。
背景技术
应用程序的开发过程中,开发人员在主干上提交制作好的内容,到了要做版本的节点,则从主干上打出一个分支,随后以这个分支作为基础,继续提交版本内容以及修复发现的问题。一般的应用程序主要由以下三部分组成:代码、数据和美术资源。其中,代码和数据均为文本文件,可以使用特定工具(例如:SVN Merge)对文本文件进行合并(将主干上的内容合并至分支上),而美术资源是二进制数据,难以使用上述的工具进行合并。
现有技术中,在测试人员在分支上发现美术资源出现问题时,美术人员需要在主干上对问题进行修复,然后通过将主干的相关内容合并至分支上,从而修复分支上的问题。而一个对一个问题的修复,可能涉及许多的美术资源,通过人工的方式对美术资源进行合并,不仅效率低,而且可靠性低,容易错漏,影响应用程序的开发效率。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种美术资源合并方法,以及相应的一种美术资源合并装置、电子设备和存储介质。
为了解决上述问题,本发明实施例公开了一种美术资源合并方法,包括:
获取目标版本日志;
解析所述目标版本日志,获取美术资源变更信息;
生成与所述美术资源变更信息对应的可执行文件;
采用所述可执行文件,进行美术资源合并。
优选地,所述解析所述目标版本日志,获取美术资源变更信息的步骤,包括:
读取与所述目标版本日志对应的目标版本号;
读取所述目标版本日志中的美术资源的变更状态,以及与所述变更状态对应的相对路径;
采用所述目标版本号、所述变更状态以及所述相对路径,生成美术资源变更信息;
其中,所述美术资源变更信息为文本文件。
优选地,所述生成与所述美术资源变更信息对应的可执行文件的步骤,包括:
获取根目录和目标目录;
遍历所述美术资源变更信息,读取当前美术资源变更信息对应的当前版本号;
当读取到所述变更状态时,确定与所述变更状态对应的相对路径;
依据所述当前版本号、相对路径和根目录,生成文件更新指令;
依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令;
采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件。
优选地,所述依据所述当前版本号、相对路径和根目录,生成文件更新指令的步骤,包括:
组合所述根目录和所述相对路径,生成源路径;
采用所述当前版本号、所述源路径和预设的更新指令,生成所述文件更新指令。
优选地,所述文件操作指令包括增加文件指令、修改文件指令和删除文件指令中的至少一种;所述依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令的步骤,包括:
组合所述目标目录和所述相对路径,生成目标路径;
当所述变更状态为增加时,采用预设的增加指令、所述源路径和所述目标路径,生成所述增加文件指令;
当所述变更状态为修改时,采用预设的修改指令、所述源路径和所述目标路径,生成所述修改文件指令;
当所述变更状态为删除时,采用预设的删除指令、所述源路径,生成所述删除文件指令。
优选地,在所述采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件之前,还包括:
统计美术资源提交数以及美术资源删除数;所述美术资源提交数为所述增加文件指令和所述修改文件指令的数量之和,所述美术资源删除数为所述删除文件指令的个数;
生成预览窗口,展示所述美术资源提交数、美术资源删除数、文件更新指令、文件操作指令。
优选地,所述采用所述可执行文件,进行美术资源合并的步骤,包括:
执行所述文件更新指令,将与所述源路径指向的文件更新至文件更新指令对应的版本;
执行所述文件操作指令;其中,当执行所述增加文件指令时,采用所述增加文件指令中源路径指向的文件,添加至所述增加文件指令中的目标路径;当执行所述修改文件指令时,采用所述修改文件指令中源路径指向的文件,覆盖所述修改文件指令中目标路径指向的文件;当执行所述删除文件指令时,删除所述删除文件指令中目标路径指向的文件。
优选地,所述获取所述目标版本日志的步骤,包括:
遍历多个版本日志,判断所述版本日志是否存在问题标识;所述版本日志对应设置有更新时间;
若当前版本日志存在问题标识,则确定当前版本日志为第一版本日志;
在确定所述第一日志版本后,确定首个不存在所述问题标识的版本日志为第二版本日志;
确定第一版本日志、第二版本日志,以及更新时间位于第一版本日志和第二版本日志之间的版本日志为所述目标版本日志。
优选地,所述确定与所述变更状态对应的相对路径的步骤,包括:
获取路径过滤信息;
当所述相对路径存在所述路径过滤信息时,在所述相对路径中删除所述路径过滤信息。
本发明实施例还公开了一种美术资源合并装置,包括:
获取模块,获取目标版本日志;
解析模块,解析所述目标版本日志,获取美术资源变更信息;
生成模块,生成与所述美术资源变更信息对应的可执行文件;
合并模块,采用所述可执行文件,进行美术资源合并。
优选地,所述解析模块包括:
目标版本号读取子模块,用于读取与所述目标版本日志对应的目标版本号;
相对路径读取子模块,用于读取所述目标版本日志中的美术资源的变更状态,以及与所述变更状态对应的相对路径;
变更信息生成子模块,用于采用所述目标版本号、所述变更状态以及所述相对路径,生成美术资源变更信息;
其中,所述美术资源变更信息为文本文件。
优选地,所述生成模块包括:
目录获取单元,用于获取根目录和目标目录;
当前版本单元,用于遍历所述美术资源变更信息,读取当前美术资源变更信息对应的当前版本号;
相对路径单元,用于当读取到所述变更状态时,确定与所述变更状态对应的相对路径;
文件更新单元,用于依据所述当前版本号、相对路径和根目录,生成文件更新指令;
文件操作单元,用于依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令;
可执行文件生成单元,用于采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件。
优选地,所述文件更新单元包括:
源路径子单元,用于组合所述根目录和所述相对路径,生成源路径;
文件更新生成子单元,用于采用所述当前版本号、所述源路径和预设的更新指令,生成所述文件更新指令。
优选地,所述文件操作指令包括增加文件指令、修改文件指令和删除文件指令中的至少一种;所述文件操作单元包括:
目标路径子单元,用于组合所述目标目录和所述相对路径,生成目标路径;
增加文件子单元,用于当所述变更状态为增加时,采用预设的增加指令、所述源路径和所述目标路径,生成所述增加文件指令;
修改文件子单元,用于当所述变更状态为修改时,采用预设的修改指令、所述源路径和所述目标路径,生成所述修改文件指令;
删除文件子单元,用于当所述变更状态为删除时,采用预设的删除指令、所述源路径,生成所述删除文件指令。
优选地,生成模块还包括:
资源统计子模块,用于统计美术资源提交数以及美术资源删除数;所述美术资源提交数为所述增加文件指令和所述修改文件指令的数量之和,所述美术资源删除数为所述删除文件指令的个数;
预览子模块,用于生成预览窗口,展示所述美术资源提交数、美术资源删除数、文件更新指令、文件操作指令。
优选地,所述合并模块包括:
第一执行子模块,用于执行所述文件更新指令,将与所述源路径指向的文件更新至文件更新指令对应的版本;
第一执行子模块,用于执行所述文件操作指令;其中,当执行所述增加文件指令时,采用所述增加文件指令中源路径指向的文件,添加至所述增加文件指令中的目标路径;当执行所述修改文件指令时,采用所述修改文件指令中源路径指向的文件,覆盖所述修改文件指令中目标路径指向的文件;当执行所述删除文件指令时,删除所述删除文件指令中目标路径指向的文件。
优选地,所述获取模块包括:
日志遍历子模块,用于遍历多个版本日志,判断所述版本日志是否存在问题标识;所述版本日志对应设置有更新时间;
第一版本日志子模块,用于若当前版本日志存在问题标识,则确定当前版本日志为第一版本日志;
第二版本日志子模块,用于在确定所述第一日志版本后,确定首个不存在所述问题标识的版本日志为第二版本日志;
目标版本日志子模块,用于确定第一版本日志、第二版本日志,以及更新时间位于第一版本日志和第二版本日志之间的版本日志为所述目标版本日志。
优选地,所述相对路径单元包括:
过滤信息获取子单元,用于获取路径过滤信息;
过滤信息子单元,用于当所述相对路径存在所述路径过滤信息时,在所述相对路径中删除所述路径过滤信息。
本发明实施例还公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的美术资源合并方法的步骤。
本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的美术资源合并方法的步骤。
本发明实施例包括以下优点:通过在获取对应修复美术资源问题的目标版本日志后,对目标版本日志进行解析,获取美术资源变更信息,美术资源变更信息即为修复美术资源问题时美术资源的合并过程。通过生成与美术资源变更信息对应的可执行文件,当运行可执行文件时,可以运行可执行文件中的指令,进行美术资源合并,从而高效、简便地修复美术资源问题,避免了现有技术中,需要人工不断校对不同版本之间的美术资源差异,才能修复美术资源问题,同时,避免了针对美术资源问题涉及大量美术资源时,修过过程效率低下的问题。
附图说明
图1是本发明的一种美术资源合并方法实施例的步骤流程图;
图2是本发明的一种美术资源合并装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种美术资源合并方法实施例的步骤流程图,具体可以包括如下步骤:
需要说明的是,美术资源是应用程序的重要组成部分之一。在应用程序的开发过程中,一般会采用版本管理工具(例如:SVN),以及采用“主干-分支”的模式,对应用程序的版本进行管理。具体的,应用程序的开发人员可以在主干上提交开发的美术资源,当需要制作应用程序版本时,在主干中提取需要的美术资源生成一个分支,根据分支的内容生成应用程序的一个版本,针对于每一次生成应用程序的版本,都会对应存储有一个版本日志。版本日志记录有制作该版本时的操作事件。
步骤101,获取目标版本日志;
在制作应用程序的版本时,可能会出现与美术资源相关的问题。为了解决同一个美术资源相关的问题,可能需要进行多次版本更新,为了针对同一问题进行美术资源合并,就需要确定解决该问题对应的目标版本,进而获取目标版本日志。
步骤102,解析所述目标版本日志,获取美术资源变更信息;
由于目标版本日志记录有生成目标版本的操作事件,其中,操作包括用户对美术资源的变更。对目标版本日志进行解析,能够获取与目标版本对应的美术资源变更信息,即目标版本中的美术资源与上一版本的美术资源的差异信息。
步骤103,生成与所述美术资源变更信息对应的可执行文件;
依据美术资源便信息生成可执行文件。可执行文件是匹配与系统环境(例如:windows中的dos环境)中的指令集合。可执行文件的扩展名为“bat”。
步骤104,采用所述可执行文件,进行美术资源合并。
执行可执行文件中的指令,可以复原对应目标版本的美术资源的变更过程,即美术资源的合并过程。而目标版本的美术资源的过程,对应修复了美术资源问题,从而实现通过运行可执行文件,执行可执行文件中的指令,进而合并美术资源,修复美术资源问题。
通过在获取对应修复美术资源问题的目标版本日志后,对目标版本日志进行解析,获取美术资源变更信息,美术资源变更信息即为修复美术资源问题时美术资源的合并过程。通过生成与美术资源变更信息对应的可执行文件,当运行可执行文件时,可以运行可执行文件中的指令,进行美术资源合并,从而高效、简便地修复美术资源问题,避免了现有技术中,需要人工不断校对不同版本之间的美术资源差异,才能修复美术资源问题,同时,避免了针对美术资源问题涉及大量美术资源时,修过过程效率低下的问题。
在本发明的一种优选实施例中,步骤101可以包括:
子步骤S11,遍历多个版本日志,判断所述版本日志是否存在问题标识;所述版本日志对应设置有更新时间;
当用户生成一个新的应用程序版本时,都会生成一个新的版本日志,版本日志与应用程序版本唯一匹配,版本日志中设置有生成该应用程序版本的时间,即更新时间。应用程序测试人员会针对每一个版本中的美术资源进行测试,当检测到该应用程序版本中存在美术资源问题时,会添加一个问题标识,以标注出现美术资源问题的应用程序版本。
可以按照更新时间的先后次序,遍历多个版本日志。
子步骤S12,若当前版本日志存在问题标识,则确定当前版本日志为第一版本日志;
当检测到版本日志存在问题标识时,则确定当前版本出现了美术资源问题,并确定当前版本日志为第一版本日志。
子步骤S13,在确定所述第一日志版本后,确定首个不存在所述问题标识的版本日志为第二版本日志;
在确定第一版本日志后,继续依次遍历余下版本日志,当检测到首个不存在所述问题标识的版本日志时,确定当前版本日志为第二版本日志。
子步骤S14,确定第一版本日志、第二版本日志,以及更新时间位于第一版本日志和第二版本日志之间的版本日志为所述目标版本日志。
因为按照更新时间次序对版本日志进行遍历,并在检测第一版本日志存在问题标识后,首个不存在问题标识的版本日志为第二版本日志,即通过第一版本日志与第二版本日志之间的版本更新,解决了第一版本日志中出现的美术资源问题。可以通过将第一版本日志、第二版本日志,以及更新时间位于第一版本日志和第二版本日志之间的版本日志为所述目标版本日志,并复原目标版本日志美术资源变更过程,就可以第一版本日志出现的美术资源问题。无需确定美术资源问题对应的具体的美术资源,进一步提高了修复美术资源问题的效率。
在本发明的一种优选实施例中,步骤102可以包括:
子步骤S21,读取与所述目标版本日志对应的目标版本号;
子步骤S22,读取所述目标版本日志中的美术资源的变更状态,以及与所述变更状态对应的相对路径;
子步骤S23,采用所述目标版本号、所述变更状态以及所述相对路径,生成(与所述目标版本号对应的)美术资源变更信息;其中,所述美术资源变更信息为文本文件。
版本日志中,记录有多种信息,包括:版本号、执行人、时间戳、版本变更类型信息、文件变更信息等。在生成执行文件之前,需要对目标版本日志中记录的信息进行筛选,通过在读取与目标版本日志对应的目标版本号、目标版本日志中的美术资源的变更状态,以及与变更状态对应的相对路径后,采用目标版本号、所述变更状态以及所述相对路径,生成与目标版本号对应的美术资源变更信息,从而对目标版本日志中记录的信息进行筛选,至保留有与美术资源相关的信息,其中,将美术资源变更信息以文本文件的格式(例如:“txt”格式)进行存储。优选地,可以将与多个版本日志对应的美术资源变更信息存储至同一个文本文件中。
在本发明的一种优选实施例中,步骤103可以包括:
子步骤S31,获取根目录和目标目录;
可以为用户提供有根目录输入栏和目标目录输入栏,确定用户在根目录输入栏输入的地址信息为根目录,以及确定用在目标目录输入栏输入的地址信息为目标目录。
例如:根目录可以为“E:\trunk”,目标目录可以为“D:\branch”
子步骤S32,遍历所述美术资源变更信息,读取当前美术资源变更信息对应的当前版本号;
可以设置有版本关键字“Revision”,美术资源变更信息中与“Revision”对应的参数确定为版本号,其中,美术资源变更信息采用“Revision:版本号”的格式记录本版关键字和版本号的对应关系。当读取到版本关键字时,确定与版本关键词对应的参数为当前版本号,并对当前版本号进行存储。
例如:美术资源变更信息记录有“Revision:16394”,当读取到“Revision”时,则确定当前版本号为“16394”。
子步骤S33,当读取到所述变更状态时,确定与所述变更状态对应的相对路径;
可以设置有状态关键字“Add”、“Modified”、“Deleted”,变更状态可以包括但不限于增加、修改、删除。其中,变更状态中的增加与“Add”对应,变更状态中的修改与“Modified”对应,变更状态中的删除与“Deleted”对应。
在美术资源变更信息中,变更状态与其对应的相对路径记录在同一行中,并以“:”间隔分开。当读取到任一状态关键字时,确定去该状态关键字对应的变更状态。例如:在遍历美术资源变更信息时,扫描到“Modified:/res/media/music_102.bank”时,根据扫描到的“Modified”确定读取到变更状态,且该变更状态为修改,与该变更状态对应的相对路径为“/res/media/music_102.bank”。
子步骤S34,依据所述当前版本号、相对路径和根目录,生成文件更新指令;
当读取到相对路径时,可以依据当前版本号、相对路径和根目录,生成文件更新指令。
子步骤S35,依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令;
当读取到相对路径时,依据变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令。
子步骤S36,采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件。
采用与当前版本号对应的文件更新指令和文件操作指令,生成可执行文件,使得采用可执行文件可以复原当前版本的美术变更过程。
在实际应用中,由于同一个文本文件中可能存储有多个目标版本中的美术资源变更信息,当读取到新的版本号时,对在先的生成文件更新指令和文件操作指令生成与版本号对应的可执行文件,从而实现为每一个目标版本生成对应的可执行文件。
在本发明的一种优选实施例中,子步骤S34包括:
子步骤S341,组合所述根目录和所述相对路径,生成源路径;
例如:根目录为“E:\trunk”,相对路径为“/res/media/music_102.bank”,则将根目录和相对路径组合后,生成的源路径为“E:\trunk\res\media\music_102.bank”。
子步骤S342,采用所述当前版本号、所述源路径和预设的更新指令,生成所述文件更新指令。
预设的更新指令可以为“SVN UP#src_file_path-r#revision”,其中“#src_file_path”为源路径,“#revision”为当前版本号。例如:当前版本号为“16394”,源路径为“E:\trunk\res\media\music_102.bank”,则文件更新指令为“SVN UP E:\trunk\res\media\music_102.bank-r 16394”。
在本发明的一种优选实施例中,所述文件操作指令包括增加文件指令、修改文件指令和删除文件指令中的至少一种;所述子步骤S35的步骤,包括:
子步骤S351,组合所述目标目录和所述相对路径,生成目标路径;
例如:目标目录为“D:\branch”,相对路径为“/res/media/music_102.bank”,则将根目录和相对路径组合后,生成的目标路径为“D:\branch\res\media\music_102.bank”。
子步骤S352,当所述变更状态为增加时,采用预设的增加指令、所述源路径和所述目标路径,生成所述增加文件指令;
预设的增加指令可以为“COPY#src_file_path#aim_file_path”,其中“#src_file_path”为源路径,“#aim_file_path”为目标路径。增加文件指令用于将源路径指向的文件拷贝至目标路径。
例如:当在美术资源变更信息中读取到“Add:/res/media/music_101.bank”时,根据状态“Add”,确定当前读取到的变更状态为增加,生成源路径为“E:\trunk\res\media\music_101.bank”,生成目标路径为“D:\branch\res\media\music_101.bank”,生成的增加文件指令为“COPY E:\trunk\res\media\music_101.bank D:\branch\res\media\music_101.bank”。
子步骤S353,当所述变更状态为修改时,采用预设的修改指令、所述源路径和所述目标路径,生成所述修改文件指令;
预设的修改指令可以为“COPY#src_file_path#aim_file_path”,其中“#src_file_path”为源路径,“#aim_file_path”为目标路径。修改文件指令用于将源路径指向的文件覆盖目标路径指向的文件。
例如:当在美术资源变更信息中读取到“Modified:/res/media/music_102.bank”时,根据状态“Modified”,确定当前读取到的变更状态为修改,生成源路径为“E:\trunk\res\media\music_102.bank”,生成目标路径为“D:\branch\res\media\music_102.bank”,生成的修改文件指令为“COPY E:\trunk\res\media\music_102.bank D:\branch\res\media\music_102.bank”。
子步骤S354,当所述变更状态为删除时,采用预设的删除指令、所述源路径,生成所述删除文件指令。
预设的删除指令可以为“DEL#aim_file_path”,其中,“#aim_file_path”为目标路径。删除文件指令用于删除目标路径指向的文件。
例如:当在美术资源变更信息中读取到“Deleted:/res/media/music_103.bank”时,根据状态“Deleted”,确定当前读取到的变更状态为删除,生成目标路径为“D:\branch\res\media\music_103.bank”,生成的删除文件指令为“DEL D:\branch\res\media\music_103.bank”。
在本发明的一种优选实施例中,在子步骤S36之之前,可以还包括:
子步骤S37,统计美术资源提交数以及美术资源删除数;所述美术资源提交数为所述增加文件指令和所述修改文件指令的数量之和,所述美术资源删除数为所述删除文件指令的个数;
增加文件指令和修改文件指令可以划分为资源提交指令,删除文件指令可以划分为资源删除指令,通过统计美术资源提交数以及美术资源删除数,可以确定当前美术资源版本变更信息中,提交的美术资源数量以及删除的美术资源数量。
子步骤S38,生成预览窗口,展示所述美术资源提交数、美术资源删除数、文件更新指令、文件操作指令。
通过预览窗口,用户可以直观地获知术资源提交数、美术资源删除数、文件更新指令、文件操作指令,可以了解当前版本对应的美术资源变更情况的同时,可以对文件更新指令、文件操作指令进行人工校对。
在本发明的一种优选实施例中,所述步骤104可以包括:
子步骤S41,执行所述文件更新指令,将与所述源路径指向的文件更新至文件更新指令对应的版本;
其中,将与所述源路径指向的文件更新至文件更新指令对应的版本的步骤,可以是将与所述源路径指向的文件从新版本回退至历史版本,或者,可以是将与所述源路径指向的文件从历史版本升级至新版本。历史版本的更新时间在源路径指向的文件的更新时间之前,新版本的更新时间在源路径指向的文件的更新时间之后。
子步骤S42,执行所述文件操作指令;其中,当执行所述增加文件指令时,采用所述增加文件指令中源路径指向的文件,添加至所述增加文件指令中的目标路径;当执行所述修改文件指令时,采用所述修改文件指令中源路径指向的文件,覆盖所述修改文件指令中目标路径指向的文件;当执行所述删除文件指令时,删除所述删除文件指令中目标路径指向的文件。
通过运行可执行文件,进行美术资源合并。具体的,将运算可执行文件时,先执行文件更新指令,再执行文件操作指令。每一个可执行文件对应一个版本日志,通过运行一个可执行文件,可以复原匹配的版本日志对应的美术资源变更过程。当目标版本日志包括多个版本日志时,按照版本日志的更新时间依次运行可执行文件,从而复原与目标版本日志对应的美术资源变更过程,从而修复美术资源问题。
在本发明的一种优选实施例中,子步骤S33还包括:
子步骤S331,获取路径过滤信息;
子步骤S332,当所述相对路径存在所述路径过滤信息时,在所述相对路径中删除所述路径过滤信息。
路径过滤信息为日期信息。相对路径中可能会存在分支日期,在生成源路径和目标路径之前,把相对路径中的路径信息删除,防止路径过滤信息响应文件操作指令和文件更新指令的运行。
在本发明实施例中,通过在多个版本日志中,根据问题标识确定目标版本日志。对目标版本日志解析,根据目标版本日志中的目标版本号、变更状态、相对路径、生成文件格式为文本文件的美术资源变更信息。通过遍历美术资源变更信息中的相对路径,以及获取到的根目录和目标目录,生成与相对路径对应的源路径和目标路径。通过源路径、目标路径以及在遍历美术资源信息过程中读取到的当前版本号和变更状态,生成文件更新指令和文件操作指令。采用文件更新指令和文件操作指令,生成与当前版本号对应的可执行文件。依次运行与目标版本号对应的可执行文件,从而依次执行可执行文件中的文件更新指令和文件操作指令,进而复原目标版本日志对应的美术资源变更过程,从而修复美术资源问题,避免需要确定美术资源问题对应的文件才能修复美术资源问题的情况,或者需要人工修改大量美术资源文件才能修复美术资源问题的情况,实现高效、简便地修复美术资源问题。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图2,示出了本发明的一种美术资源合并装置实施例的结构框图,具体可以包括如下模块:
获取模块201,获取目标版本日志;
解析模块202,解析所述目标版本日志,获取美术资源变更信息;
生成模块203,生成与所述美术资源变更信息对应的可执行文件;
合并模块204,采用所述可执行文件,进行美术资源合并。
在本发明的一种优选实施例中,所述解析模块202包括:
目标版本号读取子模块,用于读取与所述目标版本日志对应的目标版本号;
相对路径读取子模块,用于读取所述目标版本日志中的美术资源的变更状态,以及与所述变更状态对应的相对路径;
变更信息生成子模块,用于采用所述目标版本号、所述变更状态以及所述相对路径,生成美术资源变更信息;
其中,所述美术资源变更信息为文本文件。
在本发明的一种优选实施例中,所述生成模块203包括:
目录获取单元,用于获取根目录和目标目录;
当前版本单元,用于遍历所述美术资源变更信息,读取当前美术资源变更信息对应的当前版本号;
相对路径单元,用于当读取到所述变更状态时,确定与所述变更状态对应的相对路径;
文件更新单元,用于依据所述当前版本号、相对路径和根目录,生成文件更新指令;
文件操作单元,用于依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令;
可执行文件生成单元,用于采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件。
在本发明的一种优选实施例中,所述文件更新单元包括:
源路径子单元,用于组合所述根目录和所述相对路径,生成源路径;
文件更新生成子单元,用于采用所述当前版本号、所述源路径和预设的更新指令,生成所述文件更新指令。
在本发明的一种优选实施例中,所述文件操作指令包括增加文件指令、修改文件指令和删除文件指令中的至少一种;所述文件操作单元包括:
目标路径子单元,用于组合所述目标目录和所述相对路径,生成目标路径;
增加文件子单元,用于当所述变更状态为增加时,采用预设的增加指令、所述源路径和所述目标路径,生成所述增加文件指令;
修改文件子单元,用于当所述变更状态为修改时,采用预设的修改指令、所述源路径和所述目标路径,生成所述修改文件指令;
删除文件子单元,用于当所述变更状态为删除时,采用预设的删除指令、所述源路径,生成所述删除文件指令。
在本发明的一种优选实施例中,生成模块203还包括:
资源统计子模块,用于统计美术资源提交数以及美术资源删除数;所述美术资源提交数为所述增加文件指令和所述修改文件指令的数量之和,所述美术资源删除数为所述删除文件指令的个数;
预览子模块,用于生成预览窗口,展示所述美术资源提交数、美术资源删除数、文件更新指令、文件操作指令。
在本发明的一种优选实施例中,所述合并模块204包括:
第一执行子模块,用于执行所述文件更新指令,将与所述源路径指向的文件更新至文件更新指令对应的版本;
第一执行子模块,用于执行所述文件操作指令;其中,当执行所述增加文件指令时,采用所述增加文件指令中源路径指向的文件,添加至所述增加文件指令中的目标路径;当执行所述修改文件指令时,采用所述修改文件指令中源路径指向的文件,覆盖所述修改文件指令中目标路径指向的文件;当执行所述删除文件指令时,删除所述删除文件指令中目标路径指向的文件。
在本发明的一种优选实施例中,所述获取模块201包括:
日志遍历子模块,用于遍历多个版本日志,判断所述版本日志是否存在问题标识;所述版本日志对应设置有更新时间;
第一版本日志子模块,用于若当前版本日志存在问题标识,则确定当前版本日志为第一版本日志;
第二版本日志子模块,用于在确定所述第一日志版本后,确定首个不存在所述问题标识的版本日志为第二版本日志;
目标版本日志子模块,用于确定第一版本日志、第二版本日志,以及更新时间位于第一版本日志和第二版本日志之间的版本日志为所述目标版本日志。
在本发明的一种优选实施例中,所述相对路径单元包括:
过滤信息获取子单元,用于获取路径过滤信息;
过滤信息子单元,用于当所述相对路径存在所述路径过滤信息时,在所述相对路径中删除所述路径过滤信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还公开了电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的美术资源合并方法的步骤。
本发明实施例还公开了计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的美术资源合并方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种美术资源合并方法、一种美术资源合并装置、电子设备和存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种美术资源合并方法,其特征在于,包括:
获取目标版本日志;
解析所述目标版本日志,获取美术资源变更信息,所述美术资源变更信息为文本文件的格式;
生成与所述美术资源变更信息对应的可执行文件;
采用所述可执行文件,进行美术资源合并;其中,所述美术资源合并通过复原所述目标版本日志对应的目标版本的美术资源实现;
所述生成与所述美术资源变更信息对应的可执行文件的步骤,包括:
获取根目录和目标目录;
遍历所述美术资源变更信息,读取当前美术资源变更信息对应的当前版本号;
当读取到所述目标版本日志中的美术资源的变更状态时,确定与所述变更状态对应的相对路径;
依据所述当前版本号、所述相对路径和所述根目录,生成文件更新指令;
依据所述变更状态、所述相对路径,以及所述根目录和/或所述目标目录,生成文件操作指令;
采用所述文件更新指令和所述文件操作指令,生成与所述当前版本号对应的可执行文件。
2.根据权利要求1所述的方法,其特征在于,所述解析所述目标版本日志,获取美术资源变更信息的步骤,包括:
读取与所述目标版本日志对应的目标版本号;
读取与所述变更状态对应的相对路径;
采用所述目标版本号、所述变更状态以及所述相对路径,生成美术资源变更信息。
3.根据权利要求2所述的方法,其特征在于,所述依据所述当前版本号、相对路径和根目录,生成文件更新指令的步骤,包括:
组合所述根目录和所述相对路径,生成源路径;
采用所述当前版本号、所述源路径和预设的更新指令,生成所述文件更新指令。
4.根据权利要求3所述的方法,其特征在于,所述文件操作指令包括增加文件指令、修改文件指令和删除文件指令中的至少一种;所述依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令的步骤,包括:
组合所述目标目录和所述相对路径,生成目标路径;
当所述变更状态为增加时,采用预设的增加指令、所述源路径和所述目标路径,生成所述增加文件指令;
当所述变更状态为修改时,采用预设的修改指令、所述源路径和所述目标路径,生成所述修改文件指令;
当所述变更状态为删除时,采用预设的删除指令、所述源路径,生成所述删除文件指令。
5.根据权利要求4所述的方法,其特征在于,在所述采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件之前,还包括:
统计美术资源提交数以及美术资源删除数;所述美术资源提交数为所述增加文件指令和所述修改文件指令的数量之和,所述美术资源删除数为所述删除文件指令的个数;
生成预览窗口,展示所述美术资源提交数、美术资源删除数、文件更新指令、文件操作指令。
6.根据权利要求4所述的方法,其特征在于,所述采用所述可执行文件,进行美术资源合并的步骤,包括:
执行所述文件更新指令,将与所述源路径指向的文件更新至文件更新指令对应的版本;
执行所述文件操作指令;其中,当执行所述增加文件指令时,采用所述增加文件指令中源路径指向的文件,添加至所述增加文件指令中的目标路径;当执行所述修改文件指令时,采用所述修改文件指令中源路径指向的文件,覆盖所述修改文件指令中目标路径指向的文件;当执行所述删除文件指令时,删除所述删除文件指令中目标路径指向的文件。
7.根据权利要求1所述的方法,其特征在于,所述获取所述目标版本日志的步骤,包括:
遍历多个版本日志,判断所述版本日志是否存在问题标识;所述版本日志对应设置有更新时间;
若当前版本日志存在问题标识,则确定当前版本日志为第一版本日志;
在确定所述第一版本日志后,确定首个不存在所述问题标识的版本日志为第二版本日志;
确定第一版本日志、第二版本日志,以及更新时间位于第一版本日志和第二版本日志之间的版本日志为所述目标版本日志。
8.根据权利要求4或5或6所述的方法,其特征在于,所述确定与所述变更状态对应的相对路径的步骤,包括:
获取路径过滤信息;
当所述相对路径存在所述路径过滤信息时,在所述相对路径中删除所述路径过滤信息。
9.一种美术资源合并装置,其特征在于,包括:
获取模块,获取目标版本日志;
解析模块,解析所述目标版本日志,获取美术资源变更信息,所述美术资源变更信息为文本文件的格式;
生成模块,生成与所述美术资源变更信息对应的可执行文件;
合并模块,采用所述可执行文件,进行美术资源合并;其中,所述美术资源合并通过复原所述目标版本日志对应的目标版本的美术资源实现;
所述生成模块包括:
目录获取单元,用于获取根目录和目标目录;
当前版本单元,用于遍历所述美术资源变更信息,读取当前美术资源变更信息对应的当前版本号;
相对路径单元,用于当读取到所述目标版本日志中的美术资源的变更状态时,确定与所述变更状态对应的相对路径;
文件更新单元,用于依据所述当前版本号、相对路径和根目录,生成文件更新指令;
文件操作单元,用于依据所述变更状态、相对路径,以及根目录和/或目标目录,生成文件操作指令;
可执行文件生成单元,用于采用所述文件更新指令和文件操作指令,生成与所述当前版本号对应的可执行文件。
10.电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的美术资源合并方法的步骤。
11.计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的美术资源合并方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910032494.4A CN109753289B (zh) | 2019-01-14 | 2019-01-14 | 一种美术资源合并方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910032494.4A CN109753289B (zh) | 2019-01-14 | 2019-01-14 | 一种美术资源合并方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109753289A CN109753289A (zh) | 2019-05-14 |
CN109753289B true CN109753289B (zh) | 2023-02-03 |
Family
ID=66404674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910032494.4A Active CN109753289B (zh) | 2019-01-14 | 2019-01-14 | 一种美术资源合并方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109753289B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262976B (zh) * | 2019-06-21 | 2024-05-28 | 深圳市腾讯网域计算机网络有限公司 | 游戏资源文件的解析方法、装置、设备和存储介质 |
CN111796855B (zh) * | 2020-07-22 | 2023-06-09 | 大箴(杭州)科技有限公司 | 一种增量版本更新方法、装置、存储介质及计算机设备 |
CN113157312A (zh) * | 2021-04-15 | 2021-07-23 | 山东新一代信息产业技术研究院有限公司 | 应用中查看对应源码所对应的svn版本号的方法 |
CN113703917B (zh) * | 2021-08-26 | 2022-10-14 | 上海道客网络科技有限公司 | 一种多集群资源数据处理系统与方法、非暂态存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002109168A (ja) * | 2000-10-02 | 2002-04-12 | Ntt Data Corp | システム管理装置、及びその方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090064090A1 (en) * | 2007-09-05 | 2009-03-05 | Microsoft Corporation | Merged view of application customizations |
CN101739340B (zh) * | 2009-12-17 | 2012-06-06 | 金蝶软件(中国)有限公司 | 一种脚本文件的验证方法和装置 |
US9122561B2 (en) * | 2013-09-24 | 2015-09-01 | International Business Machines Corporation | Program integration that accommodates restrictions on merge-locations |
CN103955429B (zh) * | 2014-05-16 | 2016-08-31 | 北京金山网络科技有限公司 | 确定回归测试范围的方法及装置 |
CN104933101B (zh) * | 2015-05-29 | 2018-05-29 | 南车株洲电力机车研究所有限公司 | 一种基于svn的配置审计信息自动统计方法 |
CN106407115B (zh) * | 2016-09-20 | 2018-09-18 | 网易(杭州)网络有限公司 | 美术资源文件的测试方法及装置 |
CN106502688B (zh) * | 2016-11-01 | 2019-07-26 | 网易(杭州)网络有限公司 | 资源发布的处理方法及装置 |
-
2019
- 2019-01-14 CN CN201910032494.4A patent/CN109753289B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002109168A (ja) * | 2000-10-02 | 2002-04-12 | Ntt Data Corp | システム管理装置、及びその方法 |
Non-Patent Citations (1)
Title |
---|
含噪音处理的工作流挖掘算法在资源规划方面的应用;黄晓瑜等;《计算机系统应用》;20160115(第01期);第109-115页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109753289A (zh) | 2019-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109753289B (zh) | 一种美术资源合并方法、装置、电子设备和存储介质 | |
CN109271326B (zh) | 云数据库的测试方法及其装置、设备和存储介质 | |
US10275601B2 (en) | Flaw attribution and correlation | |
US10289532B2 (en) | Method and system for providing delta code coverage information | |
CN109902016B (zh) | 一种Web的测试方法及测试平台 | |
JP6723989B2 (ja) | データ駆動型検査用フレームワーク | |
CN111158674A (zh) | 组件管理方法、系统、设备及存储介质 | |
US20120296878A1 (en) | File set consistency verification system, file set consistency verification method, and file set consistency verification program | |
CN109840194B (zh) | 一种配置文件的检测方法及系统 | |
CN109358898B (zh) | 一种信息处理方法、装置、电子设备和存储介质 | |
CN105867903A (zh) | 代码库拆分的方法及装置 | |
CN112069073A (zh) | 测试用例的管理方法、终端和存储介质 | |
CN112328499A (zh) | 一种测试数据生成方法、装置、设备及介质 | |
CN106557419B (zh) | 程序的测试方法及装置 | |
KR101073816B1 (ko) | 시나리오 기반의 데이터베이스 시험 자동화 방법 및 시스템 | |
US20130339798A1 (en) | Methods for automated software testing and devices thereof | |
CN109542496B (zh) | 增量代码确定方法、装置及系统 | |
CN114546749A (zh) | 一种芯片随机测试用例回归方法、装置、设备及可读介质 | |
CN109508203B (zh) | 版本一致性确定方法、装置及系统 | |
CN117850866A (zh) | 一种数据验证测试方法及系统 | |
CN116560957A (zh) | 一种受损文档修复结果的测试方法、系统、装置及介质 | |
CN116016270A (zh) | 一种交换机测试管理方法、装置、电子设备和存储介质 | |
US11740895B2 (en) | Generation of software program repair explanations | |
CN109558153B (zh) | 版本一致性确定方法、装置及系统 | |
CN114237976A (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 |