一种代码开发方法、装置、电子设备和计算机存储介质制造方法及图纸

技术编号:23982630 阅读:23 留言:0更新日期:2020-04-29 12:03
本申请公开了一种代码开发方法、装置、电子设备和计算机存储介质,包括:从代码开发程序中的主干分支切出一一对应的至少一个功能分支和至少一个支干分支,支干分支与主干分支具有相同的特性。将每个代码开发后的功能分支与对应的支干分支进行预合并处理,得到预合并分支。在预合并处理成功后,对每个预合并分支进行编译处理;将编译后的预合并分支与主干分支进行集成合并,每次集成合并时只允许一个预合并分支与主干分支进行合并。可见,本发明专利技术提供的方法,可以通过预合并方式提前解决功能分支与主干分支合并后可能出现的代码冲突问题,以及,可以通过编译的方式提前验证功能分支合并到主干分支的稳定性,进而保证多人进行代码开发时的稳定性。

A code development method, device, electronic equipment and computer storage medium

【技术实现步骤摘要】
一种代码开发方法、装置、电子设备和计算机存储介质
本申请涉及计算机软件开发
,尤其涉及一种代码开发方法、装置、电子设备和计算机存储介质。
技术介绍
在代码开发过程中,常需要多个开发者对同一个项目功能进行代码开发。为保证多个开发者能够协作开发,在多人的软件项目团队中,大多使用多分支的开发方式,每个人在开发需求时单独从主干分支切出一个功能分支,并在各自的功能分支上进行需求开发,需求开发完毕测试通过后,再将多个功能分支合并至主干分支。但是,这种开发与代码集成模式有以下两个问题:一是在多人开发时,不能保证每个开发者开发的功能分支实时获取到最新的主干分支代码,这样易出现需求开发完成后与主干分支的代码冲突的问题,而代码冲突一旦解决出错就会导致最终合并到主干分支的代码出错,出现主干分支代码异常,无法进行编译。二是在一些开发者未安装完整的流程进行测试时,功能分支出现有问题的代码也会合并到主干分支,也会导致主干分支编译出错。一旦主干分支出现问题导致无法正确编译,就会影响后续测试,如果主干分支的问题没有及时解决甚至会影响软件版本正常发布。虽然多人开发代码过程汇总,有人工代码审核流程,但由人工执行会存在遗漏问题,并不能保证执行到位,依然无法保证主干分支的稳定性。
技术实现思路
本申请提供了一种代码开发方法、装置、电子设备和计算机存储介质,以解决现有的多人开发代码的方法不能保证主干分支的稳定性的问题。第一方面,本申请提供了一种代码开发方法,包括以下步骤:获取从代码开发程序中的主干分支切出的至少一个功能分支和至少一个支干分支,所述功能分支和支干分支一一对应,所述支干分支的代码与所述主干分支中的部分代码相同;将每一个代码开发后的功能分支和对应的所述支干分支进行预合并处理,得到多个预合并分支;在预合并处理成功后,对每个所述预合并分支进行编译处理;在编译处理成功后,将所述编译后的预合并分支与主干分支进行集成合并,其中,后一所述编译后的预合并分支在前一所述编译后的预合并分支的集成合并处理成功之后再进行集成合并。进一步地,所述将每一个代码开发后的功能分支和对应的所述支干分支进行预合并处理,得到多个预合并分支,包括:调用创建合并请求接口,根据所述代码开发后的功能分支和对应的支干分支,创建预合并请求;根据所述预合并请求,调用合并接口,将所述代码开发后的功能分支和对应的支干分支进行预合并处理,得到多个预合并分支。进一步地,所述在预合并处理成功后,对每个所述预合并分支进行编译处理,包括:调用持续集成工具接口,基于每个所述预合并分支,创建对应的编译任务;根据每个所述编译任务,对对应的所述预合并分支进行编译;按照预定时长,查询每个所述编译处理过程的编译结果;在接收到的编译结果为编译成功时,确定对应的所述预合并分支的编译过程结束。进一步地,所述在编译处理成功后,将所述编译后的预合并分支与主干分支进行集成合并,包括:调用创建合并请求接口,根据所述编译后的预合并分支和主干分支,创建集成合并请求;根据所述集成合并请求,调用合并接口,将编译后的预合并分支和主干分支进行集成合并;在当前所述编译后的预合并分支和主干分支的集成合并处理成功之后,进行下一所述编译后的预合并分支和主干分支的集成合并处理过程;调用删除分支接口,分别将每一个所述预合并分支删除。进一步地,还包括:如果所述编译处理不成功,或者,所述集成合并处理不成功,生成重置指令;根据所述重置指令,调用持续集成工具接口,删除编译过程创建的编译任务,或者,调用删除分支接口,删除预合并分支,以将代码开发状态回退到初始状态。第二方面,本申请提供了一种代码开发装置,包括:代码开发分支获取模块,用于获取从代码开发程序中的主干分支切出的至少一个功能分支和至少一个支干分支,所述功能分支和支干分支一一对应,所述支干分支的代码与所述主干分支中的部分代码相同;预合并处理模块,用于将每一个代码开发后的功能分支和对应的所述支干分支进行预合并处理,得到多个预合并分支;编译处理模块,用于在预合并处理成功后,对每个所述预合并分支进行编译处理;集成合并处理模块,用于在编译处理成功后,将所述编译后的预合并分支与主干分支进行集成合并,其中,后一所述编译后的预合并分支在前一所述编译后的预合并分支的集成合并处理成功之后再进行集成合并。进一步地,所述预合并处理模块,包括:预合并请求创建单元,用于调用创建合并请求接口,根据所述代码开发后的功能分支和对应的支干分支,创建预合并请求;预合并处理单元,用于根据所述预合并请求,调用合并接口,将所述代码开发后的功能分支和对应的支干分支进行预合并处理,得到多个预合并分支。进一步地,所述编译处理模块,包括:编译任务创建单元,用于调用持续集成工具接口,基于每个所述预合并分支,创建对应的编译任务;编译单元,用于根据每个所述编译任务,对对应的所述预合并分支进行编译;编译结果查询单元,用于按照预定时长,查询每个所述编译处理过程的编译结果;编译过程结束确定单元,用于在接收到的编译结果为编译成功时,确定对应的所述预合并分支的编译过程结束。进一步地,所述集成合并处理模块,包括:集成合并请求创建单元,用于调用创建合并请求接口,根据所述编译后的预合并分支和主干分支,创建集成合并请求;集成合并单元,用于根据所述集成合并请求,调用合并接口,将编译后的预合并分支和主干分支进行集成合并;下一集成合并触发单元,用于在当前所述编译后的预合并分支和主干分支的集成合并处理成功之后,进行下一所述编译后的预合并分支和主干分支的集成合并处理过程;分支删除单元,用于调用删除分支接口,分别将每一个所述预合并分支删除。进一步地,还包括:重置指令生成模块,用于在所述编译处理不成功,或者,所述集成合并处理不成功,生成重置指令;删除模块,用于根据所述重置指令,调用持续集成工具接口,删除编译过程创建的编译任务,或者,调用删除分支接口,删除预合并分支,以将代码开发状态回退到初始状态。第三方面,本申请提供了一种电子设备,包括:存储器,用于存储程序指令;处理器,用于调用并执行所述存储器中的程序指令,以实现第一方面所述的代码开发方法。第四方面,本申请提供了一种计算机存储介质,所述计算机存储介质中存储有计算机程序,当代码开发装置的至少一个处理器执行所述计算机程序时,代码开发装置执行第一方面所述的代码开发方法。由以上技术方案可知,本专利技术实施例提供的一种代码开发方法、装置、电子设备和计算机存储介质,包括:从代码开发程序中的主干分支切出一一对应的至少一个功能分支和至少一个支干分支,支干分支与主干分支具有相同的特性。将每个代码开发后的功能分支与对应的支干分支进行预合并处理,得到预合并分支,提前验证将功能分支合并到主干分支之后本文档来自技高网...

【技术保护点】
1.一种代码开发方法,其特征在于,包括以下步骤:/n获取从代码开发程序中的主干分支切出的至少一个功能分支和至少一个支干分支,所述功能分支和支干分支一一对应,所述支干分支的代码与所述主干分支中的部分代码相同;/n将每一个代码开发后的功能分支和对应的所述支干分支进行预合并处理,得到多个预合并分支;/n在预合并处理成功后,对每个所述预合并分支进行编译处理;/n在编译处理成功后,将所述编译后的预合并分支与主干分支进行集成合并,其中,后一所述编译后的预合并分支在前一所述编译后的预合并分支的集成合并处理成功之后再进行集成合并。/n

【技术特征摘要】
1.一种代码开发方法,其特征在于,包括以下步骤:
获取从代码开发程序中的主干分支切出的至少一个功能分支和至少一个支干分支,所述功能分支和支干分支一一对应,所述支干分支的代码与所述主干分支中的部分代码相同;
将每一个代码开发后的功能分支和对应的所述支干分支进行预合并处理,得到多个预合并分支;
在预合并处理成功后,对每个所述预合并分支进行编译处理;
在编译处理成功后,将所述编译后的预合并分支与主干分支进行集成合并,其中,后一所述编译后的预合并分支在前一所述编译后的预合并分支的集成合并处理成功之后再进行集成合并。


2.根据权利要求1所述的方法,其特征在于,所述将每一个代码开发后的功能分支和对应的所述支干分支进行预合并处理,得到多个预合并分支,包括:
调用创建合并请求接口,根据所述代码开发后的功能分支和对应的支干分支,创建预合并请求;
根据所述预合并请求,调用合并接口,将所述代码开发后的功能分支和对应的支干分支进行预合并处理,得到多个预合并分支。


3.根据权利要求1所述的方法,其特征在于,所述在预合并处理成功后,对每个所述预合并分支进行编译处理,包括:
调用持续集成工具接口,基于每个所述预合并分支,创建对应的编译任务;
根据每个所述编译任务,对对应的所述预合并分支进行编译;
按照预定时长,查询每个所述编译处理过程的编译结果;
在接收到的编译结果为编译成功时,确定对应的所述预合并分支的编译过程结束。


4.根据权利要求1所述的方法,其特征在于,所述在编译处理成功后,将所述编译后的预合并分支与主干分支进行集成合并,包括:
调用创建合并请求接口,根据所述编译后的预合并分支和主干分支,创建集成合并请求;
根据所述集成合并请求,调用合并接口,将编译后的预合并分支和主干分支进行集成合并;
在当前所述编译后的预合并分支和主干分支的集成合并处理成功之后,进行下一所述编译后的预合并分支和主干分支的集成合并处理过程;
调用删除分支接口,分别将每一个所述预合并分支删除。


5.根据权利要求1所述的方法,其特征在于,还包括:
如果所述编译处理不成功,或者,所述集成合并处理不成功,生成重置指令;
根据所述重置指令,调用持续集成工具接口,删除编译过程创建的编译任务,或者,调用删除分支接口,删除预合并分支,以将代码开发状态回退到初始状态。


6.一种代码开发装置,其特征在于,包括:
代码开发分支获取模块,用于获取从代码开发程序中的主干分支切出的至少一个功能分支和至少一个支干分支,所述功能分支和支干分支一一对应,所述支干分支的代码与所述主干分支中的部分代码相同;
预合并处理模块,用于将每一个代码开发后的...

【专利技术属性】
技术研发人员:孔校军
申请(专利权)人:北京五八信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1