CN111932207A - 项目数据处理方法、装置、计算机设备和存储介质 - Google Patents
项目数据处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111932207A CN111932207A CN202010784868.0A CN202010784868A CN111932207A CN 111932207 A CN111932207 A CN 111932207A CN 202010784868 A CN202010784868 A CN 202010784868A CN 111932207 A CN111932207 A CN 111932207A
- Authority
- CN
- China
- Prior art keywords
- file
- project
- current
- current project
- construction
- 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
Links
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000003672 processing method Methods 0.000 title abstract description 23
- 238000010276 construction Methods 0.000 claims abstract description 99
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004806 packaging method and process Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012356 Product development Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Abstract
本申请公开了一种项目数据处理方法、装置、计算机设备和存储介质,涉及云计算领域。所述方法包括:获取当前项目对应的文件,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到;接收当前项目的构建参数,构建参数包括文件标识;从当前项目的文件中,查找与文件标识对应的文件,得到第一文件;对第一文件进行构建,得到目标文件。仅对当前项目的构建参数对应的文件进行构建,而非对当前全部的文件进行构建,减少了非必须构建的文件的构建耗时和节约构建非必须构建文件的资源消耗,从而节约构建耗时和资源开销。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种项目数据处理方法、装置、计算机设备和存储介质。
背景技术
在互联网产品的前端工程项目中,通常对某一产品项目进行迭代开发。为了进行持续集成交付,前端领域的部署方式进行了自动工程化的发展。前端工程自动化部署通常针对一项产品单一项目进行统一打包发布上线/或者是一项产品中的多个子项目进行统一打包发布上线。随着单一项目体量增长,本地启动开发模式耗时长;进行编译时间耗时过长、资源消耗大。
发明内容
为了解决上述技术问题,本申请提供了一种项目数据处理方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种项目数据处理方法,包括:
获取当前项目对应的文件,每个所述文件对应所述当前项目的一个子项目,所述当前项目的子项目是对所述当前项目进行划分后得到;
接收所述当前项目的构建参数,所述构建参数包括文件标识;
从所述当前项目的文件中,查找与所述文件标识对应的文件,得到第一文件;
对所述第一文件进行构建,得到目标文件。
第二方面,本申请提供了一种项目数据处理装置,包括:
文件获取模块,用于获取当前项目对应的文件,每个所述文件对应所述当前项目的一个子项目,所述当前项目的子项目是对所述当前项目进行划分后得到;
参数接收模块,用于接收所述当前项目的构建参数,所述构建参数包括文件标识;
文件查找模块,用于从所述当前项目的文件中,查找与所述文件标识对应的文件,得到第一文件;
文件构建模块,用于对所述第一文件进行构建,得到目标文件。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取当前项目对应的文件,每个所述文件对应所述当前项目的一个子项目,所述当前项目的子项目是对所述当前项目进行划分后得到;
接收所述当前项目的构建参数,所述构建参数包括文件标识;
从所述当前项目的文件中,查找与所述文件标识对应的文件,得到第一文件;
对所述第一文件进行构建,得到目标文件。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取当前项目对应的文件,每个所述文件对应所述当前项目的一个子项目,所述当前项目的子项目是对所述当前项目进行划分后得到;
接收所述当前项目的构建参数,所述构建参数包括文件标识;
从所述当前项目的文件中,查找与所述文件标识对应的文件,得到第一文件;
对所述第一文件进行构建,得到目标文件。
上述项目数据处理方法、装置、计算机设备和存储介质,所述方法包括:获取当前项目对应的文件,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到;接收当前项目的构建参数,构建参数包括文件标识;从当前项目的文件中,查找与文件标识对应的文件,得到第一文件;对第一文件进行构建,得到目标文件。仅对当前项目的构建参数对应的文件进行构建,而非对当前全部的文件进行构建,减少了非必须构建的文件的构建耗时和节约构建非必须构建文件的资源消耗,从而节约构建耗时和资源开销。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中项目数据处理方法的应用环境图;
图2为一个实施例中项目数据处理方法的流程示意图;
图3为一个实施例中项目数据处理方法的流程示意图;
图4为一个实施例中项目数据处理装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为一个实施例中项目数据处理方法的应用环境图。参照图1,该项目数据处理方法应用于项目数据处理***。该项目数据处理***包括终端110和服务器120。终端110和服务器120通过网络连接。终端110获取当前项目对应的文件,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到;接收当前项目的构建参数,构建参数包括文件标识;从当前项目的文件中,查找与文件标识对应的文件,得到第一文件;对第一文件进行构建,得到目标文件。终端110将目标文件发送至服务器120,服务器120对目标文件进行文件合并,并打包。
终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种项目数据处理方法。本实施例主要以该方法应用于上述图1中的终端110来举例说明。参照图2,该项目数据处理方法具体包括如下步骤:
步骤S201,获取当前项目对应的文件。
在本具体实施例中,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到。
具体地,项目是指产品开发过程中的工程项目。当前项目是指正处理的项目。当前项目包括一个或多个子项目,子项目是指当前项目的其中一个功能模块或服务等等,每个项目按照功能或服务进行划分后得到多个子项目,每个子项目对应一个文件。文件中存放着用于实现该服务或功能的代码文件。项目目录结构按照子项目进行划分:对于运营类多个子项目的项目按一个子项目一个文件夹的形式组织目录;对于非多子项目的项目,从服务和模块的维度进行拆分,使每一个子项目具备独立构建的能力,再按一个子项目一个文件夹的形式组织目录。其中多子项目的项目中的子项目是指在业务形态上独立的模块,非多子项目中的服务和模块是对程序代码的划分,通常是内聚的一个单元。
步骤S202,接收当前项目的构建参数。
在本具体实施例中,构建参数包括文件标识。
具体地,构建参数是指构建当前项目的所需的参数。构建参数可以自定义,如构建参数中包括文件标识、构建的环境参数和构建的模式等。其中文件标识用于标识各个子项目对应的文件。构建参数可以是用户手动输入的,也可以是自动检测到的,还可以在自动检测之后在进行手动补充。
在一个实施例中,步骤S202,包括:接收用户根据需求输入的构建参数。
具体地,用户在确定需要构建的子项目后,手动输入对应的项目的文件标识。输入文件标识时可以是直接输入字符,也可以是在界面上选择对应的文件,进而获取该文件对应的文件标识。
在一个实施例中,步骤S202,包括:检测当前项目的文件是否发生变化;若当前项目的文件发生变化,则将发生变化的文件标识作为构建参数中的文件标识。
具体地,在对当前项目的文件进行构建之前,先检测该项目中哪些文件发生了变化。文件发生了变化,说明文件中的内容进行了修改,需要重新执行构建,并将更新后的子项目的内容更新至部署的服务器中。其中,检测当前项目的文件是否发生变化可以采用批处理方式,也可以采用逐一比对的方式进行比较。当检测到当前项目的文件存在变化的文件时,将发生了变化的文件的文件标识作为构建参数中的文件标识。
步骤S203,从当前项目的文件中,查找与文件标识对应的文件,得到第一文件。
具体地,根据构建参数中的文件标识,从当前项目对应的文件中查找与该文件标识对应的文件,若构建参数中包括多个文件标识,则查找到每个文件标识对应的文件,即第一文件。当构建参数中包含多个文件标识时,第一文件包括多个文件。
步骤S204,对第一文件进行构建,得到目标文件。
具体地,构建是指将源代码转化为生产环境对应的代码。构建是指即对源代码进行代码组合、编译、打包、压缩和翻译等操作。在执行具体的构建过程中,需要根据预先配置的用于构建代码的规则进行构建,用于构建每个子项目的代码的规则可以根据业务需求自定义设置。
上述项目数据处理方法,包括:获取当前项目对应的文件,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到;接收当前项目的构建参数,构建参数包括文件标识;从当前项目的文件中,查找与文件标识对应的文件,得到第一文件;对第一文件进行构建,得到目标文件。仅对当前项目的构建参数对应的文件进行构建,而非对当前全部的文件进行构建,减少了非必须构建的文件的构建耗时和节约构建非必须构建文件的资源消耗,从而节约构建耗时和资源开销。
在一个实施例中,每个子项目的文件存在对应的入口文件,入口文件中包括构建规则,对第一文件进行构建,得到目标文件,包括:获取第一文件对应的构建规则,得到第一构建规则;采用第一构建规则构建所述第一文件,得到目标文件。
具体地,入口文件中包括用于构建各个子项目的构建规则。不同的子项目对应不同的构建规则,每个子项目对应的文件在构建时,都是按照对应的构建规则进行构建。在确定第一文件之后,获取第一文件的构建规则,即第一构建规则,根据第一构建规则构建第一文件,得到第一文件对应的目标文件。存在多个第一文件时,获取每个第一文件对应的构建规则,采用每个第一构建规则构建对应的第一文件,得到每个第一文件的目标文件。
在一个实施例中,检测当前项目的文件是否发生变化,包括:执行差异比较指令,检测当前项目的文件是否发生变化。
具体地,差异比较指令用于检测文件是否发生变化的指令,如git diff和svndiff等指令,其中git和svn是代码版本管理工具,diff是各个不同的代码版本管理工具提供的一个差异比较命令。该差异比较指令可以对当前项目的文件的当前时刻的版本是否与预设时间对应的版本一致,若一致,则表示文件未发生变化,反之则表示发生了变化,将发生了变化的文件的文件表示作为构建参数中的标识。
在一个实施例中,检测当前项目的文件是否发生变化,包括:获取上一次构建当前项目的文件的信息摘要;获取当前构建当前项目的文件的信息摘要;对比上一次构建当前项目的文件的信息摘要,和当前构建当前项目的文件的信息摘要,得到每个文件对应的对比结果;若当前文件的对比结果为不同,则将当前文件的文件标识作为构建参数中的文件标识。
具体地,信息摘要是指根据信息摘要算法对当前项目的各个文件进行处理后得到的信息,如MD2、MD4和MD5等版本。根据上一次构建时得到的信息摘要和本次构建时得到的信息摘要进行对比,若对比结果一致,在表示该文件未发生变化,若不一致,则表示该文件发生了变化,将该文件的文件标识作为构建参数中的文件标识。采用信息摘要算法监控文件中的内容是否发生变化,相对于直接对文件的内容进行比较,比较更为方便。
在一个实施例中,对第一文件进行构建,得到目标文件之后,还包括:采用目标文件替换当前项目的第一文件,得到更新后的当前项目的文件;打包更新后的当前项目的文件发送至目标服务器。
具体地,在完成文件构建之后,需要发布该项目,采用构建后的文件替代之前对应的文件,即采用更新后的当前项目的文件替换当前项目对应的第一文件,打包更新后的当前项目的文件,并发送打包后的文件至目标服务器。其中目标服务器是指部署当前项目的服务器。目标服务器在接收到打包后的文件,对打包后的文件进行解压,生成新的版本。
在一个具体的实施例中,参照图3,图3为一个实施例中项目数据处理方法的示意图,项目数据处理方法,包括:
对项目目录结构按照子项目进行划分:对于运营类多子项目的项目按一个子项目一个文件夹的形式组织目录;对于非多子项目的项目,从服务和模块的维度进行拆分,使每一个子项目具备独立构建的能力,再按一个子项目一个文件夹的形式组织目录。如项目包括子项目A、子项目B和子项目C等。
每一个子项目配备入口文件,在webpack里配置多子项目构建代码(遍历子项目目录的入口文件执行构建),实现全量构建/发布。其中构建代码主要是处理在整个这个工程项目里的编译构建过程中,通过传参等方式获取明确的局部边界,使子项目运行完成的编译构建,同时不会对其他子项目进行构建。
指定单一子项目构建/发布:设置构建执行的指令接受参数,使之按规则匹配指定的子项目文夹名,在遍历时进行匹配,从而达到对单一/多个子项目进行构建/发布的目的。
进行本地调试,在启动指令前接受参数,即通过Sub=A npm run dev开启本地调试模式,其中A是文件标识。
通过第一服务器中部署的持续集成工具(如jenkins、travis)进行构建(build),如手动填写构建参数或自动获取构建参数。手动填写需要集成构建的子文件夹名,或者是全量构建(build)的参数实现统一升级。自动获取构建参数时可以通过差异比较指令(gitdiff或svn diff)监控子项目文件夹的变动,实现自动获取需要构建的子项目,或,通过记录每个子项目上一次构建前的md5值,在构建时对本次需要构建的子项目取md5值,与该子项目上一次的md5值进行比较,实现自动获取需要构建的子项目。
将build之后的子项目混入缓存全量项目,统一打包推送到目标服务器。即与服务器上的当前版本代码合并,打包到目标服务器。其中目标服务器可以为一个或多个。
每个目标服务器接收到打包文件后,执行解压操作,生成当前项目的新版本,并修改软链指向新版本,用户可见,即用户可以使用新版本。
按需构建单个或多个子项目,在单一项目体量增长,将项目拆分成多个子项目集成在同一项目里,进行本地按需加载某个或者某几个子项目启动开发模式;按需编译发布上线,快速灵活,资源消耗低;单一项目集成多个子项目时,进行本地按需加载某个或者某几个子项目启动开发模式;按需编译发布上线,快速灵活,资源消耗低。
现有的将同一项目的多个子项目拆成多个项目时,如一个项目非常庞大,涉及到多个***模块时,需要进行拆分成不同的项目,交给不同的团队去开发维护,每个团队维护自己的代码仓库,故需要同时维护多个代码仓库,在多个代码仓库之间管理、同步项目配置、通用代码组件等;统一进行技术升级时,可能需要对众多子项目逐个进行升级。而上述项目数据处理方法是在一个项目里进行开发和维护,属于增量的构建和编译,可以避免各个项目耗时问题、同时能共享项目的配置和组件。即采用单一项目进行管理,没有同步等问题,组件内部互相通用;统一进行技术升级时,可执行一次性全量升级。
图2为一个实施例中项目数据处理方法的流程示意图。应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种项目数据处理装置200,包括:
文件获取模块201,用于获取当前项目对应的文件,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到;
参数接收模块202,用于接收当前项目的构建参数,构建参数包括文件标识;
文件查找模块203,用于从当前项目的文件中,查找与文件标识对应的文件,得到第一文件;
文件构建模块204,用于对第一文件进行构建,得到目标文件。
在一个实施例中,每个子项目的文件存在对应的入口文件,入口文件中包括构建规则,文件构建模块204具体用于获取第一文件对应的构建规则,得到第一构建规则;采用第一构建规则构建第一文件,得到目标文件。
在一个实施例中,参数接收模块202具体用于接收用户根据需求输入的构建参数。
在一个实施例中,参数接收模块202具体还用于检测当前项目的文件是否发生变化;若当前项目的文件发生变化,则将发生变化的文件标识作为构建参数中的文件标识。
在一个实施例中,参数接收模块202具体还用于执行差异比较指令,检测当前项目的文件是否发生变化。
在一个实施例中,参数接收模块202具体还用于获取上一次构建当前项目的文件的信息摘要;获取当前构建当前项目的文件的信息摘要;对比上一次构建当前项目的文件的信息摘要,和当前构建当前项目的文件的信息摘要,得到每个文件对应的对比结果;若当前文件的对比结果为不同,则将当前文件的文件标识作为构建参数中的文件标识。
在一个实施例中,上述项目数据处理装置200还包括:
文件更新模块,用于采用目标文件替换当前项目的第一文件,得到更新后的当前项目的文件;
文件发送模块,用于打包更新后的当前项目的文件并发送至目标服务器。
图5示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110(或服务器120)。如图5所示,该计算机设备通过***总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作***,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现项目数据处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行项目数据处理方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的项目数据处理装置可以实现为一种计算机程序的形式,计算机程序可在如图5所示的计算机设备上运行。计算机设备的存储器中可存储组成该项目数据处理装置的各个程序模块,比如,图4所示的文件获取模块201、参数接收模块202、文件查找模块203和文件构建模块204。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的项目数据处理方法中的步骤。
例如,图5所示的计算机设备可以通过如图4所示的项目数据处理装置中的文件获取模块201执行获取当前项目对应的文件,每个文件对应当前项目的一个子项目,当前项目的子项目是对当前项目进行划分后得到。计算机设备可以通过参数接收模块202执行接收当前项目的构建参数,构建参数包括文件标识。计算机设备可以通过文件查找模块203执行从当前项目的文件中,查找与文件标识对应的文件,得到第一文件。计算机设备可以通过文件构建模块204执行对第一文件进行构建,得到目标文件。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述项目数据处理方法中任一实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述项目数据处理方法中任一实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (16)
1.一种项目数据处理方法,其特征在于,所述方法包括:
获取当前项目对应的文件,每个所述文件对应所述当前项目的一个子项目,所述当前项目的子项目是对所述当前项目进行划分后得到;
接收所述当前项目的构建参数,所述构建参数包括文件标识;
从所述当前项目的文件中,查找与所述文件标识对应的文件,得到第一文件;
对所述第一文件进行构建,得到目标文件。
2.根据权利要求1所述的方法,其特征在于,每个所述子项目的文件存在对应的入口文件,所述入口文件中包括构建规则,所述对所述第一文件进行构建,得到目标文件,包括:
获取所述第一文件对应的构建规则,得到第一构建规则;
采用所述第一构建规则构建所述第一文件,得到所述目标文件。
3.根据权利要求1所述的方法,其特征在于,所述接收所述当前项目的构建参数,包括:
接收用户根据需求输入的所述构建参数。
4.根据权利要求1所述的方法,其特征在于,所述接收所述当前项目的构建参数,包括:
检测所述当前项目的文件是否发生变化;
当所述当前项目的文件发生变化时,将发生变化的文件标识作为所述构建参数中的文件标识。
5.根据权利要求4所述的方法,其特征在于,所述检测所述当前项目的文件是否发生变化,包括:
执行差异比较指令,检测所述当前项目的文件是否发生变化。
6.根据权利要求4所述的方法,其特征在于,所述检测所述当前项目的文件是否发生变化,包括:
获取上一次构建所述当前项目的文件的信息摘要;
获取当前构建所述当前项目的文件的信息摘要;
对比所述上一次构建所述当前项目的文件的信息摘要,和所述当前构建所述当前项目的文件的信息摘要,得到每个所述文件对应的对比结果;
若当前文件的对比结果为不同,则将所述当前文件的文件标识作为所述构建参数中的文件标识。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述对所述第一文件进行构建,得到目标文件之后,所述方法还包括:
采用所述目标文件替换所述当前项目的第一文件,得到更新后的所述当前项目的文件;
打包所述更新后的所述当前项目的文件发送至目标服务器。
8.一种项目数据处理装置,其特征在于,所述装置包括:
文件获取模块,用于获取当前项目对应的文件,每个所述文件对应所述当前项目的一个子项目,所述当前项目的子项目是对所述当前项目进行划分后得到;
参数接收模块,用于接收所述当前项目的构建参数,所述构建参数包括文件标识;
文件查找模块,用于从所述当前项目的文件中,查找与所述文件标识对应的文件,得到第一文件;
文件构建模块,用于对所述第一文件进行构建,得到目标文件。
9.根据权利要求8所述的装置,其特征在于,每个所述子项目的文件存在对应的入口文件,所述入口文件中包括构建规则,所述文件构建模块用于获取所述第一文件对应的构建规则,得到第一构建规则,采用所述第一构建规则构建所述第一文件,得到所述目标文件。
10.根据权利要求8所述的装置,其特征在于,所述参数接收模块用于接收用户根据需求输入的所述构建参数。
11.根据权利要求8所述的装置,其特征在于,所述参数接收模块用于检测所述当前项目的文件是否发生变化,当所述当前项目的文件发生变化时,将发生变化的文件标识作为所述构建参数中的文件标识。
12.根据权利要求11所述的装置,其特征在于,所述参数接收模块用于执行差异比较指令,检测所述当前项目的文件是否发生变化。
13.根据权利要求11所述的装置,其特征在于,所述参数接收模块用于获取上一次构建所述当前项目的文件的信息摘要;获取当前构建所述当前项目的文件的信息摘要;对比所述上一次构建所述当前项目的文件的信息摘要,和所述当前构建所述当前项目的文件的信息摘要,得到每个所述文件对应的对比结果;若当前文件的对比结果为不同,则将所述当前文件的文件标识作为所述构建参数中的文件标识。
14.根据权利要求8至13中任一项所述的装置,其特征在于,所述装置还包括:
文件更新模块,用于采用所述目标文件替换所述当前项目的第一文件,得到更新后的所述当前项目的文件;
文件发送模块,用于打包所述更新后的所述当前项目的文件发送至目标服务器。
15.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010784868.0A CN111932207A (zh) | 2020-08-06 | 2020-08-06 | 项目数据处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010784868.0A CN111932207A (zh) | 2020-08-06 | 2020-08-06 | 项目数据处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111932207A true CN111932207A (zh) | 2020-11-13 |
Family
ID=73307699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010784868.0A Pending CN111932207A (zh) | 2020-08-06 | 2020-08-06 | 项目数据处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111932207A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631563A (zh) * | 2020-12-09 | 2021-04-09 | 北京飞讯数码科技有限公司 | 基于框架的***开发方法、装置、计算机设备及存储介质 |
CN113312056A (zh) * | 2021-06-16 | 2021-08-27 | 浪潮云信息技术股份公司 | angular大型集成项目的国际化实现方法、电子设备及存储介质 |
CN113344549A (zh) * | 2021-06-30 | 2021-09-03 | 深圳市斯博科技有限公司 | 项目工程文档更新方法、装置、计算机设备及存储介质 |
CN115712457A (zh) * | 2023-01-04 | 2023-02-24 | 赤子城网络技术(北京)有限公司 | 项目打包方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542538A (zh) * | 2018-11-22 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种子***管理方法和*** |
CN109766387A (zh) * | 2018-12-20 | 2019-05-17 | 平安信托有限责任公司 | 数据处理文件生成方法、装置、计算机设备和存储介质 |
CN109857397A (zh) * | 2019-01-18 | 2019-06-07 | 泰康保险集团股份有限公司 | 项目构建的方法、装置和存储介质 |
CN110597518A (zh) * | 2019-09-17 | 2019-12-20 | 上海钧正网络科技有限公司 | 项目构建方法、装置、计算机设备和存储介质 |
US20200089485A1 (en) * | 2018-09-17 | 2020-03-19 | International Business Machines Corporation | Recommending software project dependency upgrades |
CN111158680A (zh) * | 2019-12-27 | 2020-05-15 | 北京同邦卓益科技有限公司 | 一种页面构建的方法、装置、设备及存储介质 |
-
2020
- 2020-08-06 CN CN202010784868.0A patent/CN111932207A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200089485A1 (en) * | 2018-09-17 | 2020-03-19 | International Business Machines Corporation | Recommending software project dependency upgrades |
CN109542538A (zh) * | 2018-11-22 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种子***管理方法和*** |
CN109766387A (zh) * | 2018-12-20 | 2019-05-17 | 平安信托有限责任公司 | 数据处理文件生成方法、装置、计算机设备和存储介质 |
CN109857397A (zh) * | 2019-01-18 | 2019-06-07 | 泰康保险集团股份有限公司 | 项目构建的方法、装置和存储介质 |
CN110597518A (zh) * | 2019-09-17 | 2019-12-20 | 上海钧正网络科技有限公司 | 项目构建方法、装置、计算机设备和存储介质 |
CN111158680A (zh) * | 2019-12-27 | 2020-05-15 | 北京同邦卓益科技有限公司 | 一种页面构建的方法、装置、设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631563A (zh) * | 2020-12-09 | 2021-04-09 | 北京飞讯数码科技有限公司 | 基于框架的***开发方法、装置、计算机设备及存储介质 |
CN113312056A (zh) * | 2021-06-16 | 2021-08-27 | 浪潮云信息技术股份公司 | angular大型集成项目的国际化实现方法、电子设备及存储介质 |
CN113312056B (zh) * | 2021-06-16 | 2022-04-19 | 浪潮云信息技术股份公司 | angular大型集成项目的国际化实现方法、电子设备及存储介质 |
CN113344549A (zh) * | 2021-06-30 | 2021-09-03 | 深圳市斯博科技有限公司 | 项目工程文档更新方法、装置、计算机设备及存储介质 |
CN113344549B (zh) * | 2021-06-30 | 2024-03-26 | 深圳万兴软件有限公司 | 项目工程文档更新方法、装置、计算机设备及存储介质 |
CN115712457A (zh) * | 2023-01-04 | 2023-02-24 | 赤子城网络技术(北京)有限公司 | 项目打包方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111932207A (zh) | 项目数据处理方法、装置、计算机设备和存储介质 | |
JP6629697B2 (ja) | 仮想マシンイメージファイルを抽出する方法および装置 | |
US9754242B2 (en) | Deployment mechanism for non-versioning business process artifacts | |
US20200379752A1 (en) | Equivalency of revisions on modern version control systems | |
CN107193615A (zh) | 项目代码信息的更新部署方法及装置 | |
CN108920691B (zh) | 前端静态资源的管理方法、装置、计算机设备及存储介质 | |
CN112965936B (zh) | 一种异构分布式模型的处理方法、装置、设备和存储介质 | |
CN112380130A (zh) | 基于调用依赖关系的应用测试方法和装置 | |
KR20100002259A (ko) | 관련된 제품 정보를 갖는 소프트웨어 카탈로그를 파퓰레이트하기 위한 방법 및 시스템 | |
CN112506558A (zh) | 多架构静态库冲突处理方法、装置、设备及存储介质 | |
CN115729590A (zh) | 服务部署方法、装置、设备和计算机可读存储介质 | |
CN113126998B (zh) | 一种增量源码获取方法、装置、电子设备及存储介质 | |
CN115543429A (zh) | 项目环境的搭建方法、电子设备及计算机可读存储介质 | |
CN115525300A (zh) | 一种容器云场景下的增量式镜像打包方法及*** | |
JP6313987B2 (ja) | ファイル管理プログラム、ファイル管理方法、及びファイル管理システム | |
CN114089962A (zh) | 一种构件管理方法、设备及介质 | |
CN112947956A (zh) | 一种应用软件升级方法 | |
CN111651195A (zh) | 一种***依赖包冲突检测方法及装置 | |
CN111142965A (zh) | 语言配置方法、装置、电子设备及存储介质 | |
CN117348916B (zh) | 脚本生成方法、装置、设备及存储介质 | |
CN115408047B (zh) | 一种版本发布方法、装置及电子设备 | |
US20230281009A1 (en) | Managing artifact information including finding a searched artifact information item | |
US11256602B2 (en) | Source code file retrieval | |
US20220197752A1 (en) | Copy reuse using gold images | |
CN117667248A (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 |