CN114594983A - 多项目的代码开发方法、计算机设备及存储介质 - Google Patents

多项目的代码开发方法、计算机设备及存储介质 Download PDF

Info

Publication number
CN114594983A
CN114594983A CN202210056669.7A CN202210056669A CN114594983A CN 114594983 A CN114594983 A CN 114594983A CN 202210056669 A CN202210056669 A CN 202210056669A CN 114594983 A CN114594983 A CN 114594983A
Authority
CN
China
Prior art keywords
development
code
instruction
project
catalog
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
CN202210056669.7A
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.)
SHENZHEN CHUANGWEI ELECTRONIC APPLIANCE TECH CO LTD
Original Assignee
SHENZHEN CHUANGWEI ELECTRONIC APPLIANCE TECH 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 SHENZHEN CHUANGWEI ELECTRONIC APPLIANCE TECH CO LTD filed Critical SHENZHEN CHUANGWEI ELECTRONIC APPLIANCE TECH CO LTD
Priority to CN202210056669.7A priority Critical patent/CN114594983A/zh
Publication of CN114594983A publication Critical patent/CN114594983A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种多项目的代码开发方法,包括:构建每个开发项目对应的开发目录,其中,开发项目针对存储在服务器上的源代码进行开发;接收到任一开发项目的开发指令时,根据所述开发指令在所述源代码中查询目标代码;将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中;接收到所述目标代码的修改指令时,将修改后的所述目标代码更新保存在相应的所述开发目录中;接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。本申请还公开了一种计算机设备以及计算机可读存储介质。本申请旨在实现多项目并行开发代码的同时,减少多项目开发所占用的存储空间,并方便后续对二次开发的代码的维护。

Description

多项目的代码开发方法、计算机设备及存储介质
技术领域
本申请涉及软件项目开发领域,尤其涉及一种多项目的代码开发方法、计算机设备以及计算机可读存储介质。
背景技术
目前,在对操作系统(如Android系统)的源代码进行二次开发时,为了方便多人多项目并行开发,一般是将源代码复制到服务器上,以供每个项目的开发人员将源代码复制到本项目中,再在此基础上对源代码进行二次开发。
这样一来,每个开发项目都需要复制一套源代码,而一整套操作系统的源代码往往需要耗费大量的存储容量(如现在Android系统的源代码一般需要占用的容量为50-100G),多项目并行开发就得复制多套源代码,这样不仅会占用大量的存储空间,而且多项目对应多套代码,管理起来也十分麻烦,不便于开发人员后续对二次开发的代码的维护。
上述内容仅用于辅助理解本申请的技术方案,并不代表承认上述内容是现有技术。
发明内容
本申请的主要目的在于提供一种多项目的代码开发方法、计算机设备以及计算机可读存储介质,旨在实现多项目并行开发代码的同时,减少多项目开发所占用的存储空间,并方便后续对二次开发的代码的维护。
为实现上述目的,本申请提供一种多项目的代码开发方法,包括以下步骤:
构建每个开发项目对应的开发目录,其中,所述开发项目针对存储在服务器上的源代码进行开发,所述开发项目的数量包括多个;
接收到任一所述开发项目的开发指令时,根据所述开发指令在所述源代码中查询目标代码;
将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中;
接收到所述目标代码的修改指令时,将修改后的所述目标代码更新保存在相应的所述开发目录中;
接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
可选的,所述将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中的步骤之前,还包括:
生成所述源代码对应的恢复脚本,所述恢复脚本用于将所述源代码恢复至初始状态。
可选的,所述生成所述源代码对应的恢复脚本的步骤之后,还包括:
接收到恢复指令时,执行所述恢复脚本。
可选的,接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中的步骤包括:
接收到更新指令时,检测所述源代码是否有更新;
若是,执行所述恢复脚本后,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
可选的,所述多项目的代码开发方法还包括:
接收到所述开发指令时,检测所述开发指令针对的目标代码是否与历史开发指令针对的目标代码相同;
检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码相同时,检测所述开发指令对应的所述开发项目是否与所述历史开发指令对应的所述开发项目一致;
检测到所述开发指令对应的所述开发项目与所述历史开发指令对应的所述开发项目不一致时,向所述开发指令对应的所述开发项目的关联端发送代码冲突提示信息。
可选的,所述向所述开发指令对应的所述开发项目的关联端发送代码冲突提示信息的步骤之后,还包括:
接收到针对所述代码冲突提示信息的确认响应时,执行所述将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中的步骤。
可选的,所述多项目的代码开发方法还包括:
检测到有新的开发项目创建时,构建新的开发项目对应的开发目录。
可选的,所述多项目的代码开发方法还包括:
接收到开发项目删除指令时,将所述开发项目删除指令针对的开发项目对应的开发目录删除。
为实现上述目的,本申请还提供一种计算机设备,所述计算机设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的多项目的代码开发程序,所述多项目的代码开发程序被所述处理器执行时实现如上述多项目的代码开发方法的步骤。
为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有多项目的代码开发程序,所述多项目的代码开发程序被处理器执行时实现如上述多项目的代码开发方法的步骤。
本申请提供的多项目的代码开发方法、计算机设备以及计算机可读存储介质,通过为不同开发项目创建相应的开发目录,当任意开发项目有代码开发需求时,只需将该开发需求针对的代码部分,从源代码中复制至相应的开发目录后,使得相关开发人员可以直接基于开发目录中复制的代码进行二次开发,而无需将整套源代码复制至开发目录,并当需要对二次开发后的代码进行编译时,只需根据代码需要更新的部分更新源代码,在源代码的基础上进行编译,从而实现多项目并行开发代码的同时,减少多项目开发所占用的存储空间,而且当后续开发人员需要对代码更新的部分进行维护时,只需在相应开发目录中针对更新部分的代码进行维护即可,而无需在整套源代码的基础上进行维护,这样也就方便了开发人员对二次开发的代码的维护。
附图说明
图1为本申请一实施例中多项目的代码开发方法步骤示意图;
图2为本申请又一实施例中多项目的代码开发方法步骤示意图;
图3为本申请一实施例的计算机设备的内部结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,在一实施例中,所述多项目的代码开发方法包括:
步骤S10、构建每个开发项目对应的开发目录,其中,所述开发项目针对存储在服务器上的源代码进行开发,所述开发项目的数量包括多个;
步骤S20、接收到任一所述开发项目的开发指令时,根据所述开发指令在所述源代码中查询目标代码;
步骤S30、将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中;
步骤S40、接收到所述目标代码的修改指令时,将修改后的所述目标代码更新保存在相应的所述开发目录中;
步骤S50、接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
本实施例中,实施例终端为一种计算机设备,如服务器、软件开发平台等。以下以终端为软件开发平台为例进行说明。
如步骤S10所述:终端与服务器(如存储服务器)建立有通信连接,而待进行开发的源代码存储在服务器上。其中,所述源代码可以是某开发系统的源代码(如Android系统的源代码)。
可选的,相关开发人员可在终端上创建多个针对所述源代码进行开发的开发项目,终端则根据开发项目的数量,构建多个开发目录,且每个开发项目均有与之一一对应的开发目录。例如,当开发人员在终端上创建开发项目A、开发项目B和开发项目C后,则终端分别为开发项目A构建开发目录A、为开发项目B构建开发目录B,以及为开发项目C构建开发目录C。
如步骤S20所述,每一开发项目对应的开发人员,都可以利用与终端关联的设备向终端发出相应的指令。
可选的,当任一开发项目的开发人员需要针对源代码中的某一模块的代码进行开发时,则可以通过关联设备向终端发出开发指令。其中,关联设备与相应的开发项目关联,因此关联设备发出的开发指令同样与相应的开发项目关联;开发指令中包括目标代码的查询语句。如开发项目A是负责开发驱动的,则开发项目A对应的目标代码即为驱动代码,而开发人员通过关联设备向终端发送的开发指令即包括驱动代码的查询语句。
可选的,当终端接收到任一开发项目对应的开发指令时,则从开发指令中提取目标代码的查询语句,然后基于查询语句在服务器上的源代码中查询目标代码。
如步骤S30所述,当终端查询得到目标代码后,则从源代码中复制目标代码,然后将复制得到的目标代码保存至目标开发目录中,以供目标开发目录对应的开发项目的开发人员,在目标开发目录中对目标代码进行开发。所述目标开发目录对应的开发项目,即为与目标代码对应的开发指令关联的开发项目。
可选的,对于多个开发项目,终端都可以通过执行步骤S20-S30,将各个开发项目需求的目标代码,从源代码中复制保存至各个开发项目对应的开发目录中,以供各个开发项目的开发人员在开发目录中对目标代码进行开发。
如步骤S40所述,每个开发项目至少包括一个开发项,每个开发人员至少负责一个开发项。例如,开发项目A是负责开发驱动的,且开发项目可包括LCD驱动、WiFi驱动等开发项。其中,同一开发项目中的负责每个开发项的开发人员,均可通过相应的关联设备对开发项目对应的开发目录中的目标代码进行编辑修改。
可选的,任一开发项目的开发人员,均可以通过关联设备向终端发出针对目标代码的修改指令。其中,修改指令可以是增、删、改等操作。
可选的,当终端接收到修改指令时,确定该修改指令对应的开发项目,然后基于修改指令对该开发项目对应的开发目录中的目标代码进行修改,并将修改后的目标代码更新保存在相应的开发目录中。
如步骤S50所述,当开发人员对其所负责的开发项目对应的开发目录中的目标代码开发完毕后(或修改完毕后),则可以通过关联设备向终端发出针对源代码的更新指令。其中,该更新指令表示为利用相应的开发目录中的目标代码更新源代码。
当终端接收到更新指令后,确定更新指令关联的开发项目对应的开发目录,即为该更新指令针对的开发目录。然后终端获取更新指令针对的开发目录中的目标代码,然后将获取到的目标代码更新到源代码中。
应当理解的是,同一开发项目对应的开发指令和更新指令,均可包括相应的目标代码的查询语句。终端根据更新指令中的查询语句,可以查询定位到目标代码在源代码中的相应位置,然后该相应位置上的原目标代码,更新替换为新的目标代码(如该目标代码在开发目录中经过修改)。
可选的,对于多个开发项目,终端都可以通过执行步骤S40-S50,对各个开发项目需求的目标代码进行开发,并将开发后得到新的目标代码复制至源代码中,并更新替换掉源代码中的原目标代码,从而实现多项目并行开发源代码。或者,在终端接收到更新指令后,可以直接获取所有开发目录中的目标代码,并利用获取到的目标代码对源代码进行统一更新。
这样,通过为不同开发项目创建相应的开发目录,当任意开发项目有代码开发需求时,只需将该开发需求针对的代码部分,从源代码中复制至相应的开发目录后,使得相关开发人员可以直接基于开发目录中复制的代码进行二次开发,而无需将整套源代码复制至开发目录,并当需要对二次开发后的代码进行编译时,只需根据代码需要更新的部分更新源代码,在源代码的基础上进行编译,从而实现多项目并行开发代码的同时,减少多项目开发所占用的存储空间。而且当开发需求的开发项目数量越多,这样节约存储空间的方式所能达到的效果越明显。
而且当后续开发人员需要对代码更新的部分进行维护时,只需在相应开发目录中针对更新部分的代码进行维护即可(代码维护完毕后同样可向终端发出相应的更新指令,以将维护后的代码更新到源代码中),而无需在整套源代码的基础上进行维护,这样也就方便了开发人员对二次开发的代码的维护。
在一实施例中,在上述实施例基础上,所述将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中的步骤之前,还包括:
步骤S60、生成所述源代码对应的恢复脚本,所述恢复脚本用于将所述源代码恢复至初始状态。
本实施例中,终端在对源代码进行更新之前,可以是先根据源代码当前的代码内容,生成相应的恢复脚本。其中,所述恢复脚本用于将源代码恢复至初始状态。这样,当源代码更新之后,若发生编译错误,则终端可以通过运行恢复脚本来将源代码恢复至初始状态。
或者,恢复脚本也可以是由相应的开发人员手动在终端上进行编写或输入相应的脚本程序语句(这些脚本程序语句用于执行对源代码的恢复操作),由终端基于获取到的脚本程序语句生成源代码对应的恢复脚本,然后保存恢复脚本。
可选的,终端也可以是在接收到针对目标代码的修改指令时,除了根据修改指令修改相应开发目录中的目标代码,还会通过逆推修改指令来获取新的目标代码与原目标代码之间的映射特征,并根据映射特征生成相应的恢复脚本。例如,若某一修改指令是用于删除目标代码中的某行代码,则恢复脚本则可记录被该修改指令所删除的代码,当恢复脚本运行时,即可恢复所被删除的代码。
而且终端每当接收到针对目标代码的修改指令,都可以根据修改指令生成并更新恢复脚本,当恢复脚本被执行时,就可以实现只对源代码中被修改的部分进行恢复。这样,不仅实现了恢复脚本的自动生成,有效节约了人工编写恢复脚本的成本,而且与生成整套的源代码对应的恢复脚本相比,这样生成的恢复脚本十分简便、所占容量小。
在一实施例中,在上述实施例基础上,所述生成所述源代码对应的恢复脚本的步骤之后,还包括:
步骤S70、接收到恢复指令时,执行所述恢复脚本。
本实施例中,在终端基于开发项目中的目标代码对源代码进行更新之后,当开发人员发现代码出现编译错误时,可以通过关联设备向终端发送恢复指令。当终端接收到恢复指令时,则执行恢复脚本,以将源代码恢复至初始状态。
需要说明的是,恢复脚本只针对服务器上存储的源代码进行恢复,而不会对各开发目录中的目标代码执行恢复操作。
这样,通过实现源代码的可更新、可恢复,并保持源代码与各目标项目中的目标代码之间的相互独立,若源代码更新过程出现代码编译错误的问题时,开发人员可通过恢复源代码,并将恢复后的源代码与开发目录中的目标代码进行比对,可以方便开发人员快速定位编译错误的问题,并方便开发人员进行代码维护。
在一实施例中,如图2所示,在上述图1所示的实施例基础上,所述接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中的步骤包括:
步骤S51、接收到更新指令时,检测所述源代码是否有更新;
步骤S52、若是,执行所述恢复脚本后,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
本实施例中,当终端接收到针对源代码的更新指令时,先检测服务器上存储的源代码先前是否有过更新。其中,终端可以通过检测先前是否已接收过更新指令,以此判断源代码是否有更新;或者,终端检测是否存在源代码的更新日志,以此判断源代码是否有更新。
可选的,若终端检测到服务器上存储的源代码并未有过更新时,则可以直接将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
可选的,若终端检测到服务器上存储的源代码有过更新时,则可以先执行恢复脚本,将源代码恢复至初始状态之后,再将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
这样,可以保证各个开发项目在源代码的基础上编译更新目标代码时,各个开发项目编写的目标代码之间能相互独立,互不影响。使得每个开发项目,都能在初始源代码的基础上编译更新后的目标代码,这样当源代码在更新过程出现代码编译错误的问题时,就能快速定位到问题代码对应的开发项目,以便于开发人员对代码的维护。
在一实施例中,在上述实施例基础上,所述多项目的代码开发方法还包括:
步骤S80、接收到所述开发指令时,检测所述开发指令针对的目标代码是否与历史开发指令针对的目标代码相同;
步骤S81、检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码相同时,检测所述开发指令对应的所述开发项目是否与所述历史开发指令对应的所述开发项目一致;
步骤S82、检测到所述开发指令对应的所述开发项目与所述历史开发指令对应的所述开发项目不一致时,向所述开发指令对应的所述开发项目的关联端发送代码冲突提示信息。
本实施例中,每当终端接收到开发指令时,会提取并记录开发指令中的目标指令的查询语句,并检测存储中是否记录有相同的针对同一目标代码的查询语句,以此检测当前接收到的开发指令针对的目标代码,是否与历史开发指令针对的目标代码相同。
其中,当终端检测到历史记录中,已存在与当前开发指令对应的查询语句相同的历史查询语句(即两者均是针对同一目标代码),则判定检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码相同;否则,则判定检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码不相同(或者,若检测到先前并未保存有相应的历史开发指令,则直接判定检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码不相同)。
可选的,当终端检测到当前开发指令针对的目标代码与历史开发指令针对的目标代码不相同时,则直接执行所述根据所述开发指令在所述源代码中查询目标代码的步骤。
可选的,检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码相同时,则进一步检测所述开发指令对应的所述开发项目是否与所述历史开发指令对应的所述开发项目一致。
可选的,当终端检测到当前开发指令对应的开发项目与历史开发指令对应的开发项目一致时,则直接执行所述根据所述开发指令在所述源代码中查询目标代码的步骤。
可选的,当终端检测到当前开发指令对应的开发项目与历史开发指令对应的开发项目不一致时,则向当前开发指令对应的开发项目的关联端(即管关联设备)发送代码冲突提示信息,以提示相应开发项目的开发人员,目前已有其他开发项目从源代码中提取过相同的目标代码,若本开发项目继续针对相同的目标代码进行开发,将来基于二次开发后的目标代码更新源代码时可能会存在代码冲突的风险。
这样,相关开发人员在得到代码冲突提示信息后,就可以及时作出应对措施,从而降低后续根据二次开发后的目标代码更新源代码时,因多个开发项目针对源代码同一代码模块进行编译而出现代码冲突,进而造成编译错误的风险。
在一实施例中,在上述实施例基础上,所述向所述开发指令对应的所述开发项目的关联端发送代码冲突提示信息的步骤之后,还包括:
步骤S83、接收到针对所述代码冲突提示信息的确认响应时,执行所述将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中的步骤。
本实施例中,终端在向相应的关联端(即相关开发人员的关联设备)发送代码冲突提示信息之后,若相关开发人员基于代码冲突提示信息已作出相应的应对措施,或者相关开发人员认为即便多个开发项目在源代码中编译同一目标代码也无碍时,则可以通过关联设备向终端发送针对代码冲突提示信息的确认响应。
当终端接收到代码冲突提示信息的确认响应时,则从源代码中复制相应的目标代码,并执行所述将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中的步骤(即执行步骤S30),以便于开发人员在相应的开发目录中修改目标代码。
可选的,若相关开发人员认为多个开发项目在源代码中编译同一目标代码确实可能会存在代码冲突风险时,则可以通过关联设备向终端发送针对代码冲突提示信息的取消响应。
当终端接收到代码冲突提示信息的取消时,则放弃执行相应的开发指令,以免后续根据二次开发后的目标代码更新源代码时,因多个开发项目针对源代码同一代码模块进行编译而出现代码冲突,进而出现错误的风险。
在一实施例中,在上述实施例基础上,所述多项目的代码开发方法还包括:
步骤S90、检测到有新的开发项目创建时,构建新的开发项目对应的开发目录。
本实施例中,当开发人员在终端上创建新的开发项目后,当终端检测到有新的开发项目创建时,则为新的开发项目构建对应的开发目录。这样保证了开发目录的可拓展性,可以方便开发人员根据新增的开发需求拓展开发项目,并方便开发人员利用本开发项目对应的开发目录,对开发需求针对的代码部分进行二次开发,并当需要对二次开发后的代码进行编译时,只需根据开发目录中的代码更新部分更新源代码,在源代码的基础上进行编译,从而实现多项目并行开发代码的同时,减少多项目开发所占用的存储空间。
在一实施例中,在上述实施例基础上,所述多项目的代码开发方法还包括:
步骤S91、接收到开发项目删除指令时,将所述开发项目删除指令针对的开发项目对应的开发目录删除。
本实施例中,当开发人员想要删除开发项目时,可以通过关联设备向终端发出相应的开发项目删除指令。当终端接收到开发项目删除指令时,则将所述开发项目删除指令针对的开发项目删除,同时删除该开发项目对应的开发目录(包括该开发目录中的一切代码),从而节约终端的存储空间,减少代码冗余。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于多项目的代码开发程序。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的输入装置用于接收外部设备输入的信号。该计算机程序被处理器执行时以实现一种如以上实施例所述的多项目的代码开发方法。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
此外,本申请还提出一种计算机可读存储介质,所述计算机可读存储介质包括多项目的代码开发程序,所述多项目的代码开发程序被处理器执行时实现如以上实施例所述的多项目的代码开发方法的步骤。可以理解的是,本实施例中的计算机可读存储介质可以是易失性可读存储介质,也可以为非易失性可读存储介质。
综上所述,为本申请实施例中提供的多项目的代码开发方法、计算机设备和计算机可读存储介质,通过为不同开发项目创建相应的开发目录,当任意开发项目有代码开发需求时,只需将该开发需求针对的代码部分,从源代码中复制至相应的开发目录后,使得相关开发人员可以直接基于开发目录中复制的代码进行二次开发,而无需将整套源代码复制至开发目录,并当需要对二次开发后的代码进行编译时,只需根据代码需要更新的部分更新源代码,在源代码的基础上进行编译,从而实现多项目并行开发代码的同时,减少多项目开发所占用的存储空间,而且当后续开发人员需要对代码更新的部分进行维护时,只需在相应开发目录中针对更新部分的代码进行维护即可,而无需在整套源代码的基础上进行维护,这样也就方便了开发人员对二次开发的代码的维护。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种多项目的代码开发方法,其特征在于,包括:
构建每个开发项目对应的开发目录,其中,所述开发项目针对存储在服务器上的源代码进行开发,所述开发项目的数量包括多个;
接收到任一所述开发项目的开发指令时,根据所述开发指令在所述源代码中查询目标代码;
将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中;
接收到所述目标代码的修改指令时,将修改后的所述目标代码更新保存在相应的所述开发目录中;
接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
2.根据权利要求1所述的多项目的代码开发方法,其特征在于,所述将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中的步骤之前,还包括:
生成所述源代码对应的恢复脚本,所述恢复脚本用于将所述源代码恢复至初始状态。
3.根据权利要求2所述的多项目的代码开发方法,其特征在于,所述生成所述源代码对应的恢复脚本的步骤之后,还包括:
接收到恢复指令时,执行所述恢复脚本。
4.根据权利要求2所述的多项目的代码开发方法,其特征在于,所述接收到更新指令时,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中的步骤包括:
接收到更新指令时,检测所述源代码是否有更新;
若是,执行所述恢复脚本后,将所述更新指令针对的所述开发目录中的所述目标代码更新到所述源代码中。
5.根据权利要求1所述的多项目的代码开发方法,其特征在于,所述多项目的代码开发方法还包括:
接收到所述开发指令时,检测所述开发指令针对的目标代码是否与历史开发指令针对的目标代码相同;
检测到所述开发指令针对的目标代码与所述历史开发指令针对的目标代码相同时,检测所述开发指令对应的所述开发项目是否与所述历史开发指令对应的所述开发项目一致;
检测到所述开发指令对应的所述开发项目与所述历史开发指令对应的所述开发项目不一致时,向所述开发指令对应的所述开发项目的关联端发送代码冲突提示信息。
6.根据权利要求5所述的多项目的代码开发方法,其特征在于,所述向所述开发指令对应的所述开发项目的关联端发送代码冲突提示信息的步骤之后,还包括:
接收到针对所述代码冲突提示信息的确认响应时,执行所述将所述目标代码复制到所述开发指令对应的所述开发项目的开发目录中的步骤。
7.根据权利要求1所述的多项目的代码开发方法,其特征在于,所述多项目的代码开发方法还包括:
检测到有新的开发项目创建时,构建新的开发项目对应的开发目录。
8.根据权利要求1所述的多项目的代码开发方法,其特征在于,所述多项目的代码开发方法还包括:
接收到开发项目删除指令时,将所述开发项目删除指令针对的开发项目对应的开发目录删除。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的多项目的代码开发程序,所述多项目的代码开发程序被所述处理器执行时实现如权利要求1至8中任一项所述的多项目的代码开发方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有多项目的代码开发程序,所述多项目的代码开发程序被处理器执行时实现如权利要求1至8中任一项所述的多项目的代码开发方法的步骤。
CN202210056669.7A 2022-01-18 2022-01-18 多项目的代码开发方法、计算机设备及存储介质 Pending CN114594983A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210056669.7A CN114594983A (zh) 2022-01-18 2022-01-18 多项目的代码开发方法、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210056669.7A CN114594983A (zh) 2022-01-18 2022-01-18 多项目的代码开发方法、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN114594983A true CN114594983A (zh) 2022-06-07

Family

ID=81805595

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210056669.7A Pending CN114594983A (zh) 2022-01-18 2022-01-18 多项目的代码开发方法、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN114594983A (zh)

Similar Documents

Publication Publication Date Title
US8296535B2 (en) Generating incremental program updates
US8561049B2 (en) Method and system for updating content stored in a storage device
CN100507773C (zh) 实现固化程序在线升级的方法和装置
CN107704260B (zh) 一种更新应用软件的软件开发工具包的方法及系统
CN101430705B (zh) 基于嵌入式数据库的存储方法和装置
CN111240892B (zh) 数据备份方法及装置
CN111562934A (zh) 一种基于热补丁的软件系统升级方法、终端及存储介质
CN110928780B (zh) 一种代码质量控制方法、装置、计算机设备及存储介质
CN113760234B (zh) 一种软件开发方法和系统
CN108664255B (zh) 一种软件升级方法及装置
CN109144620B (zh) 一种悬浮窗权限设置界面的跳转方法及装置
CN111400256B (zh) 一种应用程序调用资源文件的方法及装置
CN112363745A (zh) 规则文件的管理方法、装置、计算机设备及存储介质
CN114594983A (zh) 多项目的代码开发方法、计算机设备及存储介质
CN115185821A (zh) 程序测试中版本标注方法、系统、设备及存储介质
CN116028084A (zh) 一种基于OpenStack云平台跨版本热升级的方法、系统及终端
CN112925561B (zh) 一种软件开发方法、装置、计算机设备及存储介质
CN112947956B (zh) 一种应用软件升级方法
CN111651195B (zh) 一种系统依赖包冲突检测方法及装置
CN100504787C (zh) 一种软件安装的虚拟执行方法及系统
US20220100496A1 (en) Tracking history of firmware program updates
CN113760361A (zh) 代码文件生成方法、计算机设备及可读存储介质
CN115390878A (zh) 文件升级方法、装置、设备及介质
CN114416133B (zh) 一种嵌入式文件数据更新方法及系统
CN110162507B (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