CN112000334A - 页面开发方法、装置、服务器及存储介质 - Google Patents
页面开发方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN112000334A CN112000334A CN202010699783.2A CN202010699783A CN112000334A CN 112000334 A CN112000334 A CN 112000334A CN 202010699783 A CN202010699783 A CN 202010699783A CN 112000334 A CN112000334 A CN 112000334A
- Authority
- CN
- China
- Prior art keywords
- page
- folder
- target
- branch
- development
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/72—Code refactoring
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开关于一种页面开发方法、装置、服务器及存储介质。其中,该页面开发方法包括:创建目标项目的开发分支,目标项目为包括多页面的项目,开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹;从开发分支中创建目标分支,目标分支的文件夹包括第三文件夹和第四文件夹,第三文件夹用于存储多页面的公共代码,第四文件夹为空文件夹或为存储有示例代码的文件夹;在目标分支中开发目标页面,将目标页面对应的页面代码存储在第四文件夹里。采用本公开提供的页面开发方法、装置、服务器及存储介质,能够解决开发多页面项目中的某个页面时,耗费时间多的问题。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种页面开发方法、装置、服务器及存储介质。
背景技术
多页面项目是指项目包括多个完整的页面。对于多页面项目来说,在进行目标页面开发时,项目中的其他页面经常会对目标页面的开发过程产生影响。
目前,在相关的技术中,开发某个目标页面时,需要从多页面项目的主分支创建一个目标分支,即需要远程下载主分支文件夹中所有页面的公共代码和页面代码。而且在将目标页面提交之前,还需要对其进行编译,使其转化为浏览器可识别的语言,并压缩打包。对于多页面项目来说,多页面的页面代码数据量极大,上述编译打包的过程十分耗费时间,进而影响开发进程。
发明内容
本公开提供一种页面开发方法、装置、服务器及存储介质,以至少解决相关技术中在开发多页面项目的某个页面时,耗费时间多的问题。
本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种页面开发方法,包括:创建目标项目的开发分支,目标项目为包括多页面的项目,开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹;从开发分支中创建目标分支,目标分支的文件夹包括第三文件夹和第四文件夹,第三文件夹用于存储多页面的公共代码,第四文件夹为空文件夹或为存储有示例代码的文件夹;在目标分支中开发目标页面,将目标页面对应的页面代码存储在第四文件夹里。
根据本公开实施例的第二方面,提供一种页面开发装置,包括:第一创建模块,被配置为执行创建目标项目的开发分支,目标项目为包括多页面的项目,开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹;第二创建模块,被配置为执行从开发分支中创建目标分支,目标分支的文件夹包括第三文件夹和第四文件夹,第三文件夹用于存储多页面的公共代码,第四文件夹为空文件夹或为存储有示例代码的文件夹;开发模块,被配置为执行在目标分支中开发目标页面;存储模块,被配置为执行将目标页面对应的页面代码存储在第四文件夹里。
根据本公开实施例的第三方面,提供一种服务器,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现如第一方面所述的页面开发方法。
根据本公开实施例的第四方面,提供一种存储介质,当存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面所述的页面开发方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,当计算机程序产品中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面所述的页面开发方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
在本公开实施例中,在开发多页面项目时,在多页面项目的开发分支中创建目标分支,开发分支的第一文件夹用于存储公共代码,开发分支的第二文件夹为空文件夹或为存储有示例代码的文件夹,相应地,在开发分支中创建的目标分支的第三文件夹也用于存储公共代码,目标分支的第四文件夹也为空文件夹或为存储有示例代码的文件夹。这样,在目标分支中开发目标页面时,可以无需下载整个项目的页面代码,提交之前也只需对目标页面的页面代码进行编译打包,而无需将整个项目的页面代码进行下载和编译打包,从而节省开发时间,加快开发进程。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种多页面项目的页面开发流程示意图。
图2是根据一示例性实施例示出的页面开发方法、装置、电子设备及存储介质应用环境示意图。
图3是根据一示例性实施例示出的一种页面开发方法的流程图。
图4是根据一示例性实施例示出的一种第四文件夹的数据结构示意图。
图5是根据一示例性实施例示出的一种页面标识信息匹配方法的流程图。
图6是根据一示例性实施例示出的另一种多页面项目的页面开发流程示意图。
图7是根据一示例性实施例示出的一种页面开发装置的框图。
图8是根据一示例性实施例示出的一种服务器的框图。
图9是根据一示例性实施例示出的用于数据处理的设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
对于多页面项目来说,在对多页面中的目标页面进行开发时,项目中的其他页面经常会对目标页面的开发过程产生影响。
下面,以图1为例说明相关技术中多页面项目开发目标页面的具体实现方式。
图1是根据一示例性实施例示出的一种多页面项目的页面开发流程图。如图1所示,开发软件或者多页面项目包括主分支110和目标分支120。其中,主分支120包括公共代码文件夹112和多页面代码文件夹114,目标分支120包括公共代码文件夹122和页面代码文件夹124。
在如图1所示的多页面项目开发目标页面的具体实现方式中,需要首先复制一个主分支110作为目标分支120,然后目标分支中开发目标页面。主分支110的文件夹里存储有该多页面项目中的公共代码和所有页面的页面代码,在复制的过程中需要远程下载所有页面的页面代码,耗费大量时间和资源。
而且,通过复制主分支110得到的目标分支120的文件夹中也存储着该多页面项目中的公共代码和所有页面的页面代码。所以,在开发完成,准备提交之前,目标分支需要将多页面代码文件夹124中所有的页面代码进行编译打包,其中,这里所说的所有的页面代码包括:目标页面的页面代码和该多页面项目中其它已经开发完成的页面的页面代码。要给所有的页面代码编译打包,需要耗费大量时间。
为了解决上述相关技术中存在的对多页面项目中的目标页面进行开发时,由于需要远程下载项目中的所有页面的公共代码和页面代码,且将目标页面提交之前,还需要对所有页面的页面代码进行压缩打包,导致页面代码下载时间过久、编译打包时间过久,进而导致影响开发进程的问题。
本公开提供了一种页面开发方法、装置、电子设备及存储介质。该页面开发方法、装置、电子设备及存储介质可在多页面项目进行目标页面开发时,通过在多页面项目的开发分支中创建目标分支,然后在目标分支中开发目标页面,这样,可以无需下载整个项目的页面码代码,提交之前也只需对目标页面进行编译打包,而无需将整个项目的页面代码进行下载和编译打包,从而节省开发时间,加快开发进程。
其中,多页面项目是指一个项目或应用中具有多个完整的页面,该页面可以是静态页面或动态页面。
编译是从源代码(通常为高级语言)到能直接被计算机或虚拟机执行的目标代码(通常为低级语言或机器语言)的翻译过程,即利用编译程序从源语言编写的源程序产生目标程序的过程。对页面代码进行编译操作,可以将本地(用户端)开发的页面代码的语言,转化为目标端(计算机或浏览器)可识别的语言。打包是指把一个或多个页面对应的文件夹进行压缩的过程,打包可以减小传输数据的数据大小,减小存储空间和传输时间。
如图2所示,是本公开说明书一个或多个实施例提供的页面开发方法、装置、电子设备及存储介质的应用环境示意图。如图2所示,服务器100通过网络300与一个或多个用户端200通信连接,以进行数据通信或交互。所述服务器100以是网络服务器、数据库服务器等。所述用户端200可以是,但不限于个人电脑(personal computer,PC)、智能手机、平板电脑、个人数字助理(personal digital assistant,PDA)等。所述网络300可以是有线或无线网络。
下面将对本公开实施例提供的页面开发方法进行详细说明。
本公开实施例提供的页面开发方法可以应用于用户端200,为了便于描述,除特别说明外,本公开实施例均以用户端200为执行主体进行说明。可以理解的是,所述的执行主体并不构成对本公开的限定。
下面,首先对本公开提供的页面开发方法进行说明。
图3是根据一示例性实施例示出的一种页面开发方法的流程图。
如图3所示,该页面开发方法可以包括以下步骤。
S310,创建目标项目的开发分支,目标项目为包括多页面的项目,开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹。
S320,从开发分支中创建目标分支,目标分支的文件夹包括第三文件夹和第四文件夹,第三文件夹用于存储多页面的公共代码,第四文件夹为空文件夹或为存储有示例代码的文件夹。
S330,在目标分支中开发目标页面,将目标页面对应的页面代码存储在第四文件夹里。
上述各步骤的具体实现方式将在下文中进行详细描述。
在本公开实施例中,通过在多页面项目的开发分支中创建目标分支,然后在目标分支中开发目标页面,开发分支的文件夹为空文件夹或为存储有示例代码的文件夹。这样,在开发目标页面时,可以无需下载整个项目的页面代码,提交之前也只需对目标页面的页面代码进行编译打包,而无需将整个项目的页面代码进行下载和编译打包,从而节省开发时间,加快开发进程。
下面介绍上述各个步骤的具体实现方式。
首先介绍S310。
创建目标项目的开发分支,开发分支(即develop分支)是正在开发的项目(即目标项目)的分支。
具体地,从主分支中创建目标项目的开发分支,主分支用于发布新版本的项目,开发的过程需要在另一条分支上完成,也就是开发分支,当开发分支的代码到达了一个可以待发布的稳定状态时,就可以将开发分支合并到主分支,也就是将开发分支的对应的目标项目中的页面代码提交到主分支。
开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹。
其中,公共代码为开发多页面的项目中的每一个页面都可能会用到的代码,主要包括:库、组件和容器等。
其中,上述涉及到的第二文件夹为空文件夹的情况,也就是第二文件夹不存储任何西代码或资源;上述涉及到的第二文件夹存储有示例代码的情况,可以为第二文件夹存储开发分支中正在开发的一个或多个页面的示例代码(即demo页面代码),通常来说,示例代码不会很多,更是远远小于多页面项目中的所有页面的页面代码。
示例性地,可以在创建目标分支的时候将开发分支的第二文件夹创建为空文件夹,也可以响应于开发者发出的清空请求,对开发分支的第二文件夹进行清空操作,本公开不限定创建开发分支的第二文件夹的时间节点和具体实现方式。
这里,由于开发分支第二文件夹为空文件夹或为存储有示例代码的文件夹,接下来从开发分支创建的目标分支的用于存储页面代码的文件夹也会是空的,目标分支在开发页面时,就无需下载整个项目的页面代码,提升下载(拉取代码)速度,可以加快目标分支的开发进程。
在本公开一些实施例中,可选地,第一文件夹包括第一子文件夹和第二子文件夹,第一子文件夹用于存储多页面的库代码;第二子文件夹用于存储多页面的组件代码。
其中,库代码或工具库代码,即将很多成熟的算法编制成子程序或函数,汇集到一起的集合,以供开发者调用。
示例性地,将时间戳转换为时间,再将时间的格式调整为目标格式,最后得到一个具体的时间(如“12:00”),这个转化的方法或者过程叫做库,或工具库。
其中,组件代码,就是实现组件功能的代码。组件包含的范围比较广泛,一个程序集、一个链接库甚至代码中的一个类都可以称为组件。
示例性地,对于游戏转盘来说,多个游戏转盘的部分逻辑都是基本一致的,故可以将已有的能实现“转盘”功能的代码直接引进到当前待开发的页面中,用于实现“转盘”功能的代码就可以称为组件代码。
这里,将不同类别的公共代码分开存储,可以方便对于多页面项目的公共代码的管理。
然后介绍S320。
在本公开一些实施例中,可选地,从开发分支中可以创建多个目标分支,开发完成的目标分支的页面代码可以进行提交,剩余未开发完成的目标分支则可以继续开发进程,多个目标分支独立进行开发,互不干扰。
在涉及到从开发分支中创建目标分支的步骤中,具体可以为:复制一个开发分支作为目标分支。由于开发分支的第一文件夹里存储有该目标项目中的公共代码。通过复制开发分支得到的目标分支的第三文件夹中也存储着该多页面项目中的公共代码。而且,开发分支的第二文件夹为空或存储有示例代码,所以通过复制开发分支得到的目标分支的第四文件夹也为空或存储有示例代码。
在本公开一些实施例中,可选地,目标页面包括多个待开发页面,第四文件夹用于存储多个待开发页面的页面代码。
具体地,目标分支可以同时开发多个待开发页面,相应地,目标分支的第四文件夹可以用于存储多个待开发页面的页面代码。
其中,目标页面包括多个待开发页面,准备进行页面开发的时候,直接在第四文件夹中遍历到待开发页面中的准备进行开发的页面即可。例如,假设目标分支中的待开发页面包括:A页面、B页面和C页面,准备开发A页面的时候,就在目标分支的第四文件夹中找到页面A的页面代码即可。
可以理解的是,假设目标页面也可以只有一个待开发页面。比如,假设只有A页面,那么直接在目标分支的第四文件夹中找到A页面的页面代码即可。
这里,在目标分支同时开发多个待开发页面,可以加快开发速度,提升目标项目的开发进程。
最后介绍S330。
在本公开一些实施例中,可选地,在S330之前,该页面开发方法还可以进一步包括以下步骤:
接收对于多个待开发页面中第一页面的开发请求,开发请求包括与第一页面对应的第一标识信息;将第一标识信息与第四文件夹中的每个子文件夹的标识信息进行匹配,得到与第一标识信息匹配的第二标识信息;将与第二标识信息对应的目标子文件夹确定为第一页面对应的子文件夹。
相应地,S330的具体方法可以包括:
在目标分支中开发第一页面,将第一页面对应的页面代码存储在目标子文件夹里。
上述涉及接收对于多个待开发页面中第一页面的开发请求,开发请求包括与第一页面对应的第一标识信息的步骤中,具体可以为:页面开发过程中,每个页面都预先设定有固定的路径,即页面路径,通过页面路径可以找到对应的开发页面。在获得开发请求后,可以根据该开发请求中携带的第一标识信息,在多页面项目中选择页面路径与第一标识信息匹配的页面作为第一页面,即需要进行开发的页面。
例如,用户在发起开发请求时,输入的信息为“AAA”,则确定第一页面中,遍历所有页面的页面路径,依次对每一个页面的页面路径进行判断,判断其中是否包含有第一标识信息“AAA”,如果包含有第一标识信息“AAA”,则将包含有第一标识信息“AAA”的页面路径所对应的页面确定为页面,也就是准备进行开发的页面。
这样,在多页待开发页面选择第一页面过程中,用户只需要在发起开发请求时输入需要开发的页面的路径,就可以快速的匹配出需要开发的第一页面。
接下来,需要将第一页面对应的页面代码存储在第四文件夹中与其对应的子文件夹中,其中,第四文件夹的数据结构如图4所示,第四文件夹包括多个子文件夹:子文件夹1、子文件夹2、子文件夹3,……,子文件夹N,每个子文件夹对应一个第二标识信息。
下面,将结合图5对为第一页面匹配与其对应的子文件夹的过程进行具体说明。图5 是根据一示例性实施例示出的一种页面标识信息匹配方法的流程图。
如图5所示,具体包括以下步骤:
S501,接收对于多个待开发页面中第一页面的开发请求,开发请求包括与第一页面对应的第一标识信息。
在准备开发第一页面时,需要确定与第一页面对应的子文件夹,也就是为第一页面匹配一个存储其页面代码的存储路径的入口,这样可以将第一页面的页面代码存储在与其对应的子文件夹中。由于开发请求包括与第一页面对应的第一标识信息,所以在接收第一页面的开发请求时,就可以一并获取到第一标识信息。
S502,将第一标识信息与第四文件夹中的每个子文件夹的标识信息进行匹配。
具体地,每个子文件夹对应存储一个页面的页面代码,一个目标分支通常是由一个开发者创建的,所以第四文件中的子文件夹数目较少,更是远小于整个项目中的页面数目,所以匹配的速度也很快。
这样就无需为每个页面分别创建一个配置文件配置本次开发的页面入口。也无需传入环境变量来用于匹配入口。避免了每次开发一个新页面,就要修改配置文件和环境变量的工作量。
S503,判断是否匹配成功。
S504,如果匹配成功,得到与第一标识信息匹配的第二标识信息。
比如第一页面的第一标识信息A与第四文件夹中的子文件夹1的第二标识信息1存在预设的匹配关系。当第一标识信息A在第四文件夹匹配到具有第二标识信息的子文件夹1时,就认为第一标识信息A与子文件夹1匹配成功。
如果匹配不成功,则与第四文件夹中的下一个子文件夹进行匹配。
S505,将与第二标识信息对应的目标子文件夹确定为第一页面对应的子文件夹。并将第一页面对应的页面代码存储在目标子文件夹里。
这样,在为第一页面选择存储路径,即存储第一页面的页面代码子文件夹的过程中,用户只需要在发起开发请求时输入需要开发的第一页面的标识信息,就可以与第一文件夹中的每个子文件夹的标识信息进行匹配,从而快速的确定出需要开发的第一页面对应的子文件夹。
示例性地,多个待开发页面的标识信息分别为:A、B、C。第四文件夹中的每个子文件夹的标识信息分别为:D、E、F。A与D有预设的匹配关系、B与E有预设的匹配关系、C与F有预设的匹配关系。接收对于多个待开发页面中第一页面A的开发请求,开发请求包括与第一页面A对应的第一标识信息A;将第一标识信息A与第四文件夹中的每个子文件夹的标识信息进行匹配,得到与第一标识信息匹配的第二标识信息D;将与第二标识信息D对应的目标子文件夹确定为第一页面对应的子文件夹D。在目标分支中开发第一页面,将第一页面A对应的页面代码存储在目标子文件夹里D。
在本公开一些实施例中,可选地,在S330之后,该页面开发方法还可以进一步包括以下步骤:
在目标页面开发完成的情况下,将目标分支合并入目标项目的主分支,主分支的第五文件夹用于存储多页面的公共代码和目标页面的页面代码。
每次提交开发完成的页面代码时,分布式版本控制系统(Git)都把它们串成一条时间线,由多次提交组成的时间线就是一个分支。截止到最近一次提交,这个分支叫主分支(即master分支)。开始的时候,主分支是一条线,Git用主分支指向最新的提交,再用指针向主分支,就能确定当前分支的提交点。其中,Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
在目标页面开发完成的情况下,即将目标页面提交的情况下,将目标分支合并入目标项目的主分支,并将目标页面的页面代码同步更新至主分支的第五文件夹。这里,目标分支的第四文件夹中只存储有目标页面的页面代码,将目标页面提交之前也只需对目标页面的页面代码进行编译打包。
对于任意页面来说,在开发完成的情况下,都会将其页面代码更新至主分支的第五文件夹,也就是说,主分支的第五文件夹用于存储多页面的公共代码和目标页面的页面代码。
可以理解的是,master分支是目标项目中所有页面代码的并集,用于存档、线上所用等。其中,因为页面在服务器上以地址的形式存在,线上所用就是用户看到的页面显示内容。
这里,由于目标分支的第四文件夹中只存储由目标页面的页面代码,将目标页面提交之前也只需对目标页面的页面代码进行编译打包,而无需将整个项目的页面代码进行编译打包,减少了上传服务器的时间,降低占用的存储空间。进而减少了开发时间,加快开发进程。
在本公开一些实施例中,可选地,响应于用户发送的提交指令,接收目标项目的多页面的第一公共代码;在第一公共代码与第一文件夹中存储的多页面的公共代码不一致的情况下,将多页面的公共代码替换为第一公共代码。
如果用户提交了新的公共代码,即新的库代码和/或组件代码,响应于用户发送的提交指令,接收目标项目的多页面的第一公共代码(新的库代码和/或新的组件代码),比较第一公共代码与第一文件夹中存储的多页面的公共代码是否一致,若不一致,则将开发分支的第一文件夹中存储的多页面的公共代码替换为第一公共代码。
这里,能够使开发分支中的公共代码与最近更新的公共代码保持同步更新。
在上述涉及到在响应于用户发送的提交指令,接收第一公共代码之后的步骤之后,还可以包括以下步骤:
在第一公共代码与主分支的第五文件夹中存储的多页面的公共代码不一致的情况下,将第五文件夹中存储的多页面的公共代码替换为第一公共代码。
如果用户提交了新的公共代码,即新的库代码和/或组件代码,响应于用户发送的提交指令,接收目标项目的多页面的第一公共代码(新的库代码和/或新的组件代码),比较第一公共代码与第五文件夹中存储的多页面的公共代码是否一致,若不一致,则将主分支的第五文件夹中存储的多页面的公共代码替换为第一公共代码。
这里,可以保证主分支中的公共代码与最近更新的公共代码保持同步更新。
综上,本公开实施例通过在多页面项目的开发分支中创建目标分支,开发分支的第一文件夹用于存储公共代码,开发分支的第二文件夹为空文件夹或为存储有示例代码的文件夹,相应地,在开发分支中创建的目标分支的第三文件夹也用于存储公共代码,目标分支的第四文件夹也为空文件夹或为存储有示例代码的文件夹。这样,在在目标分支中开发目标页面时,可以无需下载整个项目的页面代码,提交之前也只需对目标页面的页面代码进行编译打包,而无需将整个项目的页面代码进行下载和编译打包,从而节省开发时间,加快开发进程。
为了便于理解上述图3中所示的方法和步骤,下面将结合图6进行说明。图6是根据一示例性实施例示出的另一种多页面项目的页面开发流程图。如图6所示,该多页面项目包括主分支610、开发分支620和目标分支630。其中,主分支610包括第五文件夹612;开发分支620包括第一文件夹622和第二文件夹624;目标分支包括第三文件夹632和第四文件夹634。
在如图6所示的多页面项目开发目标页面的具体实现方式中,首先,在涉及到创建目标项目的开发分支的步骤中,具体可以为:复制一个主分支610作为开发分支620,本公开不限定清空第二文件夹的具体方式。其中,主分支610的第五文件夹612里存储有该目标项目中的公共代码和所有页面的页面代码。通过复制主分支610得到的开发分支620 也存储有该目标项目中的公共代码。
但是与主分支610不同的是,开发分支620中并不存储该目标项目中所有页面的页面代码,即开发分支620的文件夹中仅保留多页面的公共代码。即开发分支的第一文件夹622用于存储多页面的公共代码,第二文件夹624为空文件夹。
在本公开的一些实施例中,第二文件夹624也可以存储一些示例代码(demo页面代码)。
然后,在涉及到从开发分支620中创建目标分支630的步骤中,具体可以为:复制一个开发分支620作为目标分支630。
其中,开发分支620的第一文件夹622里存储有该目标项目中的公共代码。通过复制开发分支620得到的目标分支630的文件夹中也存储着该多页面项目中的公共代码。而且,开发分支620的第二文件夹624为空或存储有示例代码,所以目标分支630的第四文件夹634也为空或存储有示例代码。
这样,由于开发分支的第二文件夹624为空文件夹,在创建目标分支630的过程中,就不需要远程下载目标项目中所有页面的页面代码,能够节约时间和资源。而且,在目标分支630开发完成,准备提交之前,目标分支也只需要将第四文件夹634中的目标页面对应的页面代码进行编译打包,加快编译打包的速度,提升开发进程。
基于上述页面开发方法,本公开还提供了一种页面开发装置。具体结合图7进行说明。
图7是根据一示例性实施例示出的一种页面开发装置的框图。参照图7,该页面开发装置700可以包括第一创建模块710、第二创建模块720、开发模块730和存储模块740。
第一创建模块710,被配置为执行创建目标项目的开发分支,目标项目为包括多页面的项目,开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹。
第二创建模块720,被配置为执行从开发分支中创建目标分支,目标分支的文件夹包括第三文件夹和第四文件夹,第三文件夹用于存储多页面的公共代码,第四文件夹为空文件夹或为存储有示例代码的文件夹。
开发模块730,被配置为执行在目标分支中开发目标页面。
存储模块740,被配置为执行将目标页面对应的页面代码存储在第四文件夹里。
在本公开实施例中,该页面开发装置700能够通过在多页面项目的开发分支中创建目标分支,然后在目标分支中开发目标页面,开发分支的文件夹为空文件夹或为存储有示例代码的文件夹。这样,在开发目标页面时,可以无需下载整个项目的页面代码,提交之前也只需对目标页面的页面代码进行编译打包,而无需将整个项目的页面代码进行下载和编译打包,从而节省开发时间,加快开发进程。
其中,上述涉及到的第一文件夹包括第一子文件夹和第二子文件夹,第一子文件夹用于存储多页面的库代码;第二子文件夹用于存储多页面的组件代码。
其中,上述涉及到的第目标页面包括多个待开发页面,第四文件夹用于存储多个待开发页面的页面代码。
在本公开一些实施例中,该页面开发装置700还可以包括第一接收模块、匹配模块和确定模块。
该第一接收模块,被配置为执行将接收对于多个待开发页面中第一页面的开发请求,开发请求包括与第一页面对应的第一标识信息。
该匹配模块,被配置为执行将第一标识信息与第四文件夹中的每个子文件夹的标识信息进行匹配,得到与第一标识信息匹配的第二标识信息。
该确定模块,被配置为执行将与第二标识信息对应的目标子文件夹确定为第一页面对应的子文件夹。
相应地,开发模块730,被进一步配置为执行在目标分支中开发第一页面。
相应地,存储模块740,被进一步配置为执行将第一页面对应的页面代码存储在目标子文件夹里。
在本公开一些实施例中,该页面开发装置700还可以包括第二接收模块和替换模块。
该第二接收模块,被配置为执行响应于用户发送的提交指令,接收目标项目的多页面的第一公共代码。
该替换模块,被配置为执行在第一公共代码与第一文件夹中存储的多页面的公共代码不一致的情况下,将多页面的公共代码替换为第一公共代码。
在本公开一些实施例中,该替换模块,被进一步配置为执行在第一公共代码与主分支的第五文件夹中存储的多页面的公共代码不一致的情况下,将第五文件夹中存储的多页面的公共代码替换为第一公共代码。
在本公开一些实施例中,该页面开发装置700还可以包括:合并模块。
该合并模块,被配置为执行在目标页面开发完成的情况下,将目标分支合并入目标项目的主分支,主分支的第五文件夹用于存储多页面的公共代码和目标页面的页面代码。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8是根据一示例性实施例示出的一种服务器的框图。参照图8,本公开实施例还提供了一种服务器,包括处理器810、通信接口820、存储器830和通信总线840,其中,处理器810、通信接口820和存储器830通过通信总线840完成相互间的通信。
该存储器830,用于存放处理器810可执行的指令。
该处理器810,用于执行存储器830上所存放的指令时,实现如下步骤:
创建目标项目的开发分支,目标项目为包括多页面的项目,开发分支的文件夹包括第一文件夹和第二文件夹,第一文件夹用于存储多页面的公共代码,第二文件夹为空文件夹或为存储有示例代码的文件夹;从开发分支中创建目标分支,目标分支的文件夹包括第三文件夹和第四文件夹,第三文件夹用于存储多页面的公共代码,第四文件夹为空文件夹或为存储有示例代码的文件夹;在目标分支中开发目标页面,将目标页面对应的页面代码存储在第四文件夹里。
可见,应用本公开实施例,在开发多页面项目时,在多页面项目的开发分支中创建目标分支,开发分支的第一文件夹用于存储公共代码,开发分支的第二文件夹为空文件夹或为存储有示例代码的文件夹,相应地,在开发分支中创建的目标分支的第三文件夹也用于存储公共代码,目标分支的第四文件夹也为空文件夹或为存储有示例代码的文件夹。这样,在在目标分支中开发目标页面时,可以无需下载整个项目的页面代码,提交之前也只需对目标页面的页面代码进行编译打包,而无需将整个项目的页面代码进行下载和编译打包,从而节省开发时间,加快开发进程。
图9是根据一示例性实施例示出的用于数据处理的设备的框图。例如,该设备900可以被提供为一服务器。参照图9,服务器900包括处理组件922,其进一步包括一个或多个处理器,以及由存储器932所代表的存储器资源,用于存储可由处理组件922的执行的指令,例如应用程序。存储器932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件922被配置为执行指令,以执行上述任一实施例所述的页面开发方法。
该设备900还可以包括一个电源组件926被配置为执行设备900的电源管理,一个有线或无线网络接口950被配置为将设备900连接到网络,和一个输入输出(I/O)接口958。设备900可以操作基于存储在存储器932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在本公开一些实施例中,还提供了一种存储介质,当该存储介质中的指令由服务器的处理器执行时,使得服务器能够执行上述任一实施例所述的页面开发方法。
可选地,该存储介质可以是非临时性计算机可读存储介质,示例性的,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在本公开一些实施例中,还提供了一种计算机程序产品,当计算机程序产品中的指令由服务器的处理器执行时,使得服务器能够执行上述任一实施例所述的页面开发方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种页面开发方法,应用于电子设备,其特征在于,包括:
创建目标项目的开发分支,所述目标项目为包括多页面的项目,所述开发分支的文件夹包括第一文件夹和第二文件夹,所述第一文件夹用于存储所述多页面的公共代码,所述第二文件夹为空文件夹或为存储有示例代码的文件夹;
从所述开发分支中创建目标分支,所述目标分支的文件夹包括第三文件夹和第四文件夹,所述第三文件夹用于存储所述多页面的公共代码,所述第四文件夹为空文件夹或为存储有所述示例代码的文件夹;
在所述目标分支中开发目标页面,将所述目标页面对应的页面代码存储在所述第四文件夹里。
2.根据权利要求1所述的方法,其特征在于,所述目标页面包括多个待开发页面,所述第四文件夹用于存储所述多个待开发页面的页面代码。
3.根据权利要求2所述的方法,其特征在于,在所述在所述目标分支中开发目标页面之前,所述方法还包括:
接收对于所述多个待开发页面中第一页面的开发请求,所述开发请求包括与所述第一页面对应的第一标识信息;
将所述第一标识信息与所述第四文件夹中的每个子文件夹的标识信息进行匹配,得到与所述第一标识信息匹配的第二标识信息;
将与所述第二标识信息对应的目标子文件夹确定为所述第一页面对应的子文件夹;
所述在所述目标分支中开发目标页面,具体包括:
在所述目标分支中开发所述第一页面,将所述第一页面对应的页面代码存储在所述目标子文件夹里。
4.根据权利要求1所述的方法,其特征在于,在所述在所述目标分支中开发所述目标页面之后,所述方法还包括:
在所述目标页面开发完成的情况下,将所述目标分支合并入所述目标项目的主分支,所述主分支的第五文件夹用于存储所述多页面的公共代码和所述目标页面的页面代码。
5.一种页面开发装置,其特征在于,包括:
第一创建模块,被配置为执行创建目标项目的开发分支,所述目标项目为包括多页面的项目,所述开发分支的文件夹包括第一文件夹和第二文件夹,所述第一文件夹用于存储所述多页面的公共代码,所述第二文件夹为空文件夹或为存储有示例代码的文件夹;
第二创建模块,被配置为执行从所述开发分支中创建目标分支,所述目标分支的文件夹包括第三文件夹和第四文件夹,所述第三文件夹用于存储所述多页面的公共代码,所述第四文件夹为空文件夹或为存储有所述示例代码的文件夹;
开发模块,被配置为执行在所述目标分支中开发目标页面;
存储模块,被配置为执行将所述目标页面对应的页面代码存储在所述第四文件夹里。
6.根据权利要求5所述的装置,其特征在于,所述目标页面包括多个待开发页面,所述第四文件夹用于存储所述多个待开发页面的页面代码。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第一接收模块,被配置为执行将接收对于所述多个待开发页面中第一页面的开发请求,所述开发请求包括与所述第一页面对应的第一标识信息;
匹配模块,被配置为执行将所述第一标识信息与所述第四文件夹中的每个子文件夹的标识信息进行匹配,得到与所述第一标识信息匹配的第二标识信息;
确定模块,被配置为执行将与所述第二标识信息对应的目标子文件夹确定为所述第一页面对应的子文件夹;
所述开发模块,被进一步配置为执行在所述目标分支中开发所述第一页面;
所述存储模块,被进一步配置为执行将所述第一页面对应的页面代码存储在所述目标子文件夹里。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
合并模块,被配置为执行在所述目标页面开发完成的情况下,将所述目标分支合并入所述目标项目的主分支,所述主分支的第五文件夹用于存储所述多页面的公共代码和所述目标页面的页面代码。
9.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至4中任一项所述的页面开发方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求1至4中任一项所述的页面开发方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010699783.2A CN112000334B (zh) | 2020-07-20 | 2020-07-20 | 页面开发方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010699783.2A CN112000334B (zh) | 2020-07-20 | 2020-07-20 | 页面开发方法、装置、服务器及存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN112000334A true CN112000334A (zh) | 2020-11-27 |
| CN112000334B CN112000334B (zh) | 2024-10-25 |
Family
ID=73468014
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010699783.2A Active CN112000334B (zh) | 2020-07-20 | 2020-07-20 | 页面开发方法、装置、服务器及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN112000334B (zh) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112528199A (zh) * | 2020-12-11 | 2021-03-19 | 杭州搜车数据科技有限公司 | 活动页面发布方法、装置、电子装置及存储介质 |
| CN113392070A (zh) * | 2021-07-07 | 2021-09-14 | 百果园技术(新加坡)有限公司 | 在线文档管理方法、装置、系统、设备及存储介质 |
| CN113609422A (zh) * | 2021-08-12 | 2021-11-05 | 上海数依数据科技有限公司 | 可视化配置页面的方法、系统、处理器以及可读存储介质 |
| CN116192837A (zh) * | 2023-02-28 | 2023-05-30 | 灵犀科技有限公司 | 一种基于bi系统的页面下载方法及装置 |
Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105094851A (zh) * | 2015-09-06 | 2015-11-25 | 浪潮软件股份有限公司 | 一种基于Git随时发布代码的实现方法 |
| US9430229B1 (en) * | 2013-03-15 | 2016-08-30 | Atlassian Pty Ltd | Merge previewing in a version control system |
| CN107291448A (zh) * | 2017-05-19 | 2017-10-24 | 上海瀚乾信息技术服务有限公司 | 一种软件开发项目管理系统 |
| CN108415694A (zh) * | 2018-02-28 | 2018-08-17 | 山东汇贸电子口岸有限公司 | 一种基于GitFlow工作流的Android敏捷开发系统及方法 |
| CN109814873A (zh) * | 2019-02-14 | 2019-05-28 | 北京顺丰同城科技有限公司 | 一种代码发布方法及装置 |
| CN109933364A (zh) * | 2019-02-25 | 2019-06-25 | 晶晨半导体(上海)股份有限公司 | 一种代码管理方法 |
| CN110069260A (zh) * | 2019-03-16 | 2019-07-30 | 平安城市建设科技(深圳)有限公司 | 跨版本的分布式管理方法、装置、设备及存储介质 |
| CN110413309A (zh) * | 2019-08-02 | 2019-11-05 | 浪潮云信息技术有限公司 | 一种基于gitlab的项目代码分支管理方法及系统 |
| CN111142879A (zh) * | 2019-12-05 | 2020-05-12 | 深圳融卡智能科技有限公司 | 软件集成发布方法及自动运维平台 |
| CN111367501A (zh) * | 2020-02-13 | 2020-07-03 | 深圳壹账通智能科技有限公司 | 软件在线开发方法、装置、设备和存储介质 |
-
2020
- 2020-07-20 CN CN202010699783.2A patent/CN112000334B/zh active Active
Patent Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9430229B1 (en) * | 2013-03-15 | 2016-08-30 | Atlassian Pty Ltd | Merge previewing in a version control system |
| CN105094851A (zh) * | 2015-09-06 | 2015-11-25 | 浪潮软件股份有限公司 | 一种基于Git随时发布代码的实现方法 |
| CN107291448A (zh) * | 2017-05-19 | 2017-10-24 | 上海瀚乾信息技术服务有限公司 | 一种软件开发项目管理系统 |
| CN108415694A (zh) * | 2018-02-28 | 2018-08-17 | 山东汇贸电子口岸有限公司 | 一种基于GitFlow工作流的Android敏捷开发系统及方法 |
| CN109814873A (zh) * | 2019-02-14 | 2019-05-28 | 北京顺丰同城科技有限公司 | 一种代码发布方法及装置 |
| CN109933364A (zh) * | 2019-02-25 | 2019-06-25 | 晶晨半导体(上海)股份有限公司 | 一种代码管理方法 |
| CN110069260A (zh) * | 2019-03-16 | 2019-07-30 | 平安城市建设科技(深圳)有限公司 | 跨版本的分布式管理方法、装置、设备及存储介质 |
| CN110413309A (zh) * | 2019-08-02 | 2019-11-05 | 浪潮云信息技术有限公司 | 一种基于gitlab的项目代码分支管理方法及系统 |
| CN111142879A (zh) * | 2019-12-05 | 2020-05-12 | 深圳融卡智能科技有限公司 | 软件集成发布方法及自动运维平台 |
| CN111367501A (zh) * | 2020-02-13 | 2020-07-03 | 深圳壹账通智能科技有限公司 | 软件在线开发方法、装置、设备和存储介质 |
Non-Patent Citations (1)
| Title |
|---|
| 杨永毅;赵芳;赵思亮;: "基于SVN技术实现气象项目源代码管理", 气象水文海洋仪器, no. 04 * |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112528199A (zh) * | 2020-12-11 | 2021-03-19 | 杭州搜车数据科技有限公司 | 活动页面发布方法、装置、电子装置及存储介质 |
| CN112528199B (zh) * | 2020-12-11 | 2022-09-09 | 杭州搜车数据科技有限公司 | 活动页面发布方法、装置、电子装置及存储介质 |
| CN113392070A (zh) * | 2021-07-07 | 2021-09-14 | 百果园技术(新加坡)有限公司 | 在线文档管理方法、装置、系统、设备及存储介质 |
| CN113392070B (zh) * | 2021-07-07 | 2024-05-14 | 百果园技术(新加坡)有限公司 | 在线文档管理方法、装置、系统、设备及存储介质 |
| CN113609422A (zh) * | 2021-08-12 | 2021-11-05 | 上海数依数据科技有限公司 | 可视化配置页面的方法、系统、处理器以及可读存储介质 |
| CN116192837A (zh) * | 2023-02-28 | 2023-05-30 | 灵犀科技有限公司 | 一种基于bi系统的页面下载方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN112000334B (zh) | 2024-10-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109840429B (zh) | 智能合约部署、调用方法和装置 | |
| US11016785B2 (en) | Method and system for mirror image package preparation and application operation | |
| CN112000334B (zh) | 页面开发方法、装置、服务器及存储介质 | |
| US6651240B1 (en) | Object-oriented software development support apparatus and development support method | |
| US11307839B2 (en) | Updating of container-based applications | |
| US20030093420A1 (en) | Method and system for retrieving sharable information using a hierarchically dependent directory structure | |
| CN111142884B (zh) | 小程序的版本部署方法、装置、电子设备及存储介质 | |
| US12008353B2 (en) | Parsing tool for optimizing code for deployment on a serverless platform | |
| CN108595191A (zh) | 一种应用安装方法及装置 | |
| WO2017034953A1 (en) | System and method for object compression and state synchronization | |
| CN112835568A (zh) | 一种项目构建方法和装置 | |
| CN111984300B (zh) | 代码复制方法及装置、电子设备和计算机可读存储介质 | |
| CN114816816A (zh) | 崩溃堆栈信息处理方法、装置、设备及存储介质 | |
| CN116301951B (zh) | 一种基于kubernetes的微服务应用安装升级方法及装置 | |
| CN110162299A (zh) | web程序及其快速开发框架、开发方法与相关设备 | |
| CN113495730B (zh) | 资源包的生成及解析方法和装置 | |
| US20230315888A1 (en) | Storage medium, generation method, and information processing device | |
| CN111930455A (zh) | 页面更新方法、装置、终端及存储介质 | |
| CN115268879A (zh) | 代码处理方法、装置、电子设备及存储介质 | |
| US20200065409A1 (en) | Container-image reproduction and debugging | |
| CN114254232B (zh) | 云产品页面生成方法、装置、计算机设备和存储介质 | |
| CN113806327B (zh) | 一种数据库设计方法、装置及相关设备 | |
| CN117348871A (zh) | 基于模板的页面控件生成方法及装置 | |
| CN117891465A (zh) | 一种软件包的投放方法、装置、计算机设备和存储介质 | |
| CN115509634A (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 | ||
| TG01 | Patent term adjustment | ||
| TG01 | Patent term adjustment |