本申请涉及软件开发,尤其涉及一种代码仓库管理方法、装置、电子设备及存储介质。
背景技术:
1、代码仓库是软件如应用程序代码的存储机构,用于代码版本管理和代码变动跟踪。在大型软件项目管理中,为了满足项目的分阶段管理要求,引入代码分支的概念,通过建立不同的代码分支来对代码仓库实施管控,通过利用代码分支可以将工作从开发主线上分离开来,减少对开发主线的影响。
2、现有技术中,在进行软件开发项目时,通过计划进行驱动,即确定项目需求,进而根据项目需求进行规划,评估开发项目所需要的开发人员,进一步的,将项目需求拆分为需求项进行排期,每个开发人员按照自己的排期进行各自的代码开发,在开发人员完成各自的代码开发后,配置管理人员将所有开发人员的开发的代码合并到一起,并发布到测试环境进行测试,进而完成软件开发项目。
3、但是,上述软件开发的方式,每个开发人员依次按照自己的排期进行代码开发,且需要配置管理人员花费大量时间与所有开发人员进行沟通,进而将所有开发人员的代码合并到一起,不仅开发效率低,还需要花费大量的沟通成本和人力成本。
技术实现思路
1、本申请提供一种代码仓库管理方法、装置、电子设备及存储介质,可以智能的对代码进行合并,减少出错的可能性,在需要对代码进行更改时,直接调用相应的代码分支进行修改即可,不需要对整个的运行代码进行修改,提高开发效率,节省沟通成本和人力成本。
2、第一方面,本申请提供一种代码仓库管理方法,所述代码仓库由多个代码分支构成,所述方法包括:
3、基于软件开发需求创建所述代码仓库对应的代码分支,并将所述代码分支分配给至少一个开发端进行代码开发;
4、响应于至少一个开发端的代码开发操作,获取每一代码开发操作对应的目标代码,并将所述目标代码复制到相应的代码分支,得到目标代码分支;
5、响应于目标代码分支的合并请求,确定待合并的目标代码分支是否存在依赖关系;
6、若是,则将存在依赖关系的目标代码分支进行合并,并将合并后的目标代码分支进行代码测试,以测试合并后的目标代码分支中的代码是否运行正常。
7、可选的,获取每一代码开发操作对应的目标代码,并将所述目标代码复制到相应的代码分支,包括:
8、获取每一代码开发操作创建的模块分支,所述模块分支用于记录开发端编写的功能代码;
9、对所述模块分支中的功能代码进行功能测试,得到目标代码;所述目标代码为测试合格的代码;
10、将所述目标代码上传至相应的代码分支,并将所述目标代码进行复制。
11、可选的,所述方法还包括:
12、响应于开发端在模块分支中的更改操作,获取所述更改操作对应的功能代码;
13、对所述更改操作对应的功能代码重新进行功能测试,并得到测试合格的目标代码。
14、可选的,将合并后的目标代码分支进行代码测试,包括:
15、获取预设时间内进行合并的多个目标代码分支,并对所述多个目标代码分支分别进行代码测试,以验证所述多个目标代码分支中的代码是否运行正常;
16、在确定所述多个目标代码分支中的代码运行正常后,对合并后的目标代码分支进行代码测试。
17、可选的,所述方法还包括:
18、每隔预设周期,获取合并后的目标代码分支以及进行合并的每一目标代码分支对应的时间戳,并对所述合并后的目标代码分支中的代码进行编译,得到发布分支;
19、针对每一发布分支,基于数据镜像方法对所述发布分支进行处理,并确定所述发布分支中是否存在更新的时间戳和/或更新的代码;
20、若存在,则获取所述更新的时间戳和/或更新的代码对应的发布分支,并将所述发布分支进行发布。
21、可选的,将所述发布分支进行发布,包括:
22、获取所述发布分支对应的运行环境,并基于所述运行环境配置生成所述发布分支对应的配置文件;
23、基于所述配置文件和所述发布分支生成软件包,并将所述软件包进行发布。
24、可选的,所述方法还包括:
25、当确定合并后的目标代码分支中的代码运行不正常时,生成提示信息,并将所述提示信息发送至开发端,以使开发端基于所述提示信息重新进行代码开发,其中,所述提示信息包括运行不正常的代码和运行问题。
26、第二方面,本申请一种代码仓库管理装置,所述代码仓库由多个代码分支构成,所述装置包括:
27、创建模块,用于基于软件开发需求创建所述代码仓库对应的代码分支,并将所述代码分支分配给至少一个开发端进行代码开发;
28、响应模块,用于响应于至少一个开发端的代码开发操作,获取每一代码开发操作对应的目标代码,并将所述目标代码复制到相应的代码分支,得到目标代码分支;
29、确定模块,用于响应于目标代码分支的合并请求,确定待合并的目标代码分支是否存在依赖关系;
30、合并模块,用于当待合并的目标代码分支存在依赖关系时,将存在依赖关系的目标代码分支进行合并,并将合并后的目标代码分支进行代码测试,以测试合并后的目标代码分支中的代码是否运行正常。
31、第三方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
32、所述存储器存储计算机执行指令;
33、所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项所述的方法。
34、第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面中任一项所述的方法。
35、第五方面,本申请提供一种计算机程序产品,包括程序代码,当计算机运行所述计算机程序时,所述程序代码执行如第一方面中任一项所述的方法。
36、综上所述,本申请提供一种代码仓库管理方法、装置、电子设备及存储介质,该代码仓库由多个代码分支构成,具体的,可以基于软件开发需求创建代码仓库对应的代码分支,并将代码分支分配给至少一个开发端进行代码开发;进一步的,响应于至少一个开发端的代码开发操作,获取每一代码开发操作对应的目标代码,并将目标代码复制到相应的代码分支,得到目标代码分支;进一步的,响应于目标代码分支的合并请求,确定待合并的目标代码分支是否存在依赖关系;若是,则将存在依赖关系的目标代码分支进行合并,并将合并后的目标代码分支进行代码测试,以测试合并后的目标代码分支中的代码是否运行正常,这样,可以基于软件开发需求提前定义好的代码分支进行代码开发,且针对存在依赖关系的多个代码分支,可以智能的合并,减少出错的可能性,提高代码分支的准确性,在需要对代码进行更改时,直接调用相应的代码分支进行修改即可,不需要对整个代码仓库中的代码进行修改,提高开发效率,节省成本。
1.一种代码仓库管理方法,其特征在于,所述代码仓库由多个代码分支构成,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,获取每一代码开发操作对应的目标代码,并将所述目标代码复制到相应的代码分支,包括:
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,将合并后的目标代码分支进行代码测试,包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,将所述发布分支进行发布,包括:
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
8.一种代码仓库管理装置,其特征在于,所述代码仓库由多个代码分支构成,所述装置包括:
9.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-7中任一项所述的方法。
11.一种计算机程序产品,其特征在于,包括程序代码,当计算机运行所述计算机程序时,所述程序代码执行如权利要求1-7中任一项所述的方法。