分支版本合并方法、装置、系统及电子设备制造方法及图纸

技术编号:32826783 阅读:14 留言:0更新日期:2022-03-26 20:30
本申请提供了一种分支版本合并方法、装置、系统及电子设备,该方法应用于服务端,服务端与版本管理服务器连接;接收用户的分支合并请求;将请求中的目标版本号和目标分支号发送至版本管理服务器,以使版本管理服务器确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件;其中,合并方向为从第一分支到第二分支;接收版本管理服务器返回的第二待合并版本文件的标识,基于该标识创建目标仓库;在目标仓库中进行第一待合并版本文件和第二待合并版本文件的合并操作,得到目标合并版本文件;将目标合并版本文件发送至版本管理服务器。本申请提供的合并方法,学习成本低、操作简单、不会漏提交、发生冲突时不会阻塞其它合并操作。它合并操作。它合并操作。

【技术实现步骤摘要】
分支版本合并方法、装置、系统及电子设备


[0001]本申请涉及软件
,尤其是涉及一种分支版本合并方法、装置、系统及电子设备。

技术介绍

[0002]当前的项目研发流程中,为保留里程碑版本或开发大型独立功能,往往会采用分支策略。在分支策略中,分支合并操作可以实现不同分支间代码的同步,是必不可少的一环。在一些大型的项目中,每天都会产生成百上千次的分支合并,如何提升合并效率,妥善处理合并产生的版本冲突,是一个非常有价值的研究课题。
[0003]现有技术中,分支合并方案有以下3种(以通过SVN实现从分支A合并到分支B为例进行说明,SVN是subversion的缩写,是一个开放源代码的版本控制系统,即版本管理服务器):
[0004]1.使用SVN图形化merge工具:在分支B需要merge的目录下,使用SVN merge功能,并查询分支A需要被merge内容提交的版本号,merge成功后,在目录下勾选被merge的文件提交至分支B的远程仓库。
[0005]2.直接在文件系统层面操作,删除分支B需要merge的目录下的所有文件,并拷贝分支A中的文件到目录下,完成后再提交至分支B的远程仓库。
[0006]3.在某一工具服务器上拉取完整的分支B的仓库,根据版本号使用SVN命令行工具根据版本号从分支A进行merge,在分支B上完成merge操作后进行提交。
[0007]对于方案1:操作步骤复杂,容易出现误操作,非技术岗同学学习成本高。查询版本号时回溯仓库内所有提交,耗时很长,且merge成功后无法自动定位修改文件,commit阶段容易出现漏提交。
[0008]对于方案2:本质上是一种”双端提交”的策略,使用后分支的版本将无法对齐,版本号自带merge功能将无法使用,造成问题时难以回溯。进一步地,由于存在”删除”操作,流程上若出现不规范容易导致文件被错误覆盖,且对于资源量较大的仓库,整个流程执行时间比较长,效率低。
[0009]对于方案3:完整仓库定位版本号时耗时较长,且一旦发生版本冲突,会导致其他的merge的操作也无法正常进行,造成流程阻塞。
[0010]综上,现有的分支合并方式,存在学习成本高、操作繁琐、耗时长、容易漏提交、发生冲突时会阻塞其它合并操作的技术问题。

技术实现思路

[0011]本申请的目的在于提供一种分支版本合并方法、装置、系统及电子设备,以解决上述技术问题。
[0012]第一方面,本申请实施例提供一种分支版本合并方法,该方法应用于服务端,服务端与版本管理服务器连接;版本管理服务器包括多个分支;每个分支包括至少一个版本文
件;方法包括:接收用户的分支合并请求;分支合并请求中携带有目标版本号和目标分支号;将目标版本号和目标分支号发送至版本管理服务器,以使版本管理服务器根据目标版本号和目标分支号,确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件;其中,合并方向为从第一分支到第二分支;接收版本管理服务器返回的所述第二待合并版本文件的标识,基于第二待合并版本文件的标识创建目标仓库;在目标仓库中进行第一待合并版本文件和第二待合并版本文件的合并操作,得到目标合并版本文件;将目标合并版本文件发送至版本管理服务器。
[0013]进一步的,上述将目标版本号和目标分支号发送至版本管理服务器,以使版本管理服务器根据目标版本号和目标分支号,确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件的步骤,包括:将所述目标版本号和所述目标分支号发送至所述版本管理服务器,以使所述版本管理服务器根据目标版本号,查找对应的版本提交信息;版本提交信息包括:指定分支号、第一版本文件和第二版本文件;第二版本文件为在第一版本文件基础上进行修改得到的新版本文件;将指定分支号对应的第二版本文件确定为第一分支下的第一待合并版本文件;将目标分支号对应的分支确定为第二分支;在第二分支对应的版本文件中查找与第一版本文件相同的文件,将查找到的文件作为第二分支下的第二待合并版本文件。
[0014]进一步的,上述基于第二待合并版本文件的标识创建目标仓库的步骤,包括:根据所述第二待合并版本文件的标识,从版本管理服务器拉取第二待合并版本文件;生成包含第二待合并版本文件的目标仓库。
[0015]进一步的,上述在目标仓库中进行第一待合并版本文件和第二待合并版本文件的合并操作,得到目标合并版本文件的步骤,包括:接收版本管理服务器根据版本提交信息,返回的第一待合并版本文件对应的修改信息;基于修改信息在目标仓库中对第二待合并版本文件进行合并操作,得到目标合并版本文件。
[0016]进一步的,上述在将目标合并版本文件发送至版本管理服务器的步骤之后,方法还包括:删除目标仓库。
[0017]进一步的,上述服务端还与终端设备连接;终端设备安装有智能聊天工具;接收用户的分支合并请求的步骤,包括:接收终端设备发送的分支合并请求;分支合并请求为用户在终端设备的界面上输入的基于目标版本号的分支合并指令。
[0018]进一步的,上述在目标仓库中进行第一待合并版本文件和第二待合并版本文件的合并操作,得到目标合并版本文件的步骤之后,方法还包括:向终端设备发送分支合并成功的第一提示信息,以使终端设备向用户显示第一提示信息。
[0019]进一步的,上述方法还包括:如果未接收到版本管理服务器返回的待合并版本文件的标识,或者,在目标仓库中进行第一待合并版本文件和第二待合并版本文件的合并操作出现冲突时,向终端设备发送分支合并失败的第二提示信息,以使终端设备向用户显示第二提示信息。
[0020]进一步的,上述第二提示信息还至少包括以下之一:分支合并失败原因、需手动处理提示信息、处理人信息和冲突文件。
[0021]第二方面,本申请实施例还提供一种分支版本合并方法,方法应用于版本管理服务器,版本管理服务器与服务端连接;版本管理服务器包括多个分支;每个分支包括至少一
个版本文件;方法包括:接收服务端发送的目标版本号和目标分支号;根据目标版本号和目标分支号,确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件;其中,合并方向为从第一分支到第二分支;向服务端发送第二待合并版本文件的标识,以使服务端基于第二待合并版本文件的标识创建目标仓库;在目标仓库中进行第一待合并版本文件和第二待合并版本文件的合并操作,得到目标合并版本文件;接收服务端发送的目标合并版本文件。
[0022]进一步的,上述根据目标版本号和目标分支号,确定待合并版本文件的步骤,包括:根据目标版本号,查找对应的版本提交信息;版本提交信息包括:指定分支号、第一版本文件和第二版本文件;第二版本文件为在第一版本文件基础上进行修改得到的新版本文件;将指定分支号对应的第二版本文件确定为第一分支下的第一待合并版本文件;将目标分支号对应的分支确定为第二分支;在第二分支对应的版本文件中查找与第一版本文件相同的文件,将查找到的文件作为第二分支下的第二待合并版本文件。
[0023]进一步的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分支版本合并方法,其特征在于,所述方法应用于服务端,所述服务端与版本管理服务器连接;所述版本管理服务器包括多个分支;每个分支包括至少一个版本文件;所述方法包括:接收用户的分支合并请求;所述分支合并请求中携带有目标版本号和目标分支号;将所述目标版本号和所述目标分支号发送至所述版本管理服务器,以使所述版本管理服务器根据所述目标版本号和所述目标分支号,确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件;其中,合并方向为从第一分支到所述第二分支;接收所述版本管理服务器返回的所述第二待合并版本文件的标识,基于所述第二待合并版本文件的标识创建目标仓库;在所述目标仓库中进行所述第一待合并版本文件和所述第二待合并版本文件的合并操作,得到目标合并版本文件;将所述目标合并版本文件发送至所述版本管理服务器。2.根据权利要求1所述的方法,其特征在于,将所述目标版本号和所述目标分支号发送至所述版本管理服务器,以使所述版本管理服务器根据所述目标版本号和所述目标分支号,确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件的步骤,包括:将所述目标版本号和所述目标分支号发送至所述版本管理服务器,以使所述版本管理服务器根据所述目标版本号,查找对应的版本提交信息;所述版本提交信息包括:指定分支号、第一版本文件和第二版本文件;所述第二版本文件为在所述第一版本文件基础上进行修改得到的新版本文件;将所述指定分支号对应的第二版本文件确定为第一分支下的第一待合并版本文件;将所述目标分支号对应的分支确定为第二分支;在所述第二分支对应的版本文件中查找与所述第一版本文件相同的文件,将查找到的文件作为所述第二分支下的第二待合并版本文件。3.根据权利要求1所述的方法,其特征在于,基于所述第二待合并版本文件的标识创建目标仓库的步骤,包括:根据所述第二待合并版本文件的标识,从所述版本管理服务器拉取所述第二待合并版本文件;生成包含所述第二待合并版本文件的目标仓库。4.根据权利要求2所述的方法,其特征在于,在所述目标仓库中进行所述第一待合并版本文件和所述第二待合并版本文件的合并操作,得到目标合并版本文件的步骤,包括:接收所述版本管理服务器根据所述版本提交信息,返回的所述第一待合并版本文件对应的修改信息;基于所述修改信息在所述目标仓库中对所述第二待合并版本文件进行合并操作,得到目标合并版本文件。5.根据权利要求1所述的方法,其特征在于,在将所述目标合并版本文件发送至所述版本管理服务器的步骤之后,所述方法还包括:删除所述目标仓库。6.根据权利要求1所述的方法,其特征在于,所述服务端还与终端设备连接;所述终端设备安装有智能聊天工具;接收用户的分支合并请求的步骤,包括:
接收所述终端设备发送的分支合并请求;所述分支合并请求为所述用户在所述终端设备的界面上输入的基于所述目标版本号的分支合并指令。7.根据权利要求6所述的方法,其特征在于,在所述目标仓库中进行所述第一待合并版本文件和所述第二待合并版本文件的合并操作,得到目标合并版本文件的步骤之后,所述方法还包括:向所述终端设备发送分支合并成功的第一提示信息,以使所述终端设备向所述用户显示所述第一提示信息。8.根据权利要求6所述的方法,其特征在于,所述方法还包括:如果未接收到所述版本管理服务器返回的所述第二待合并版本文件的标识,或者,在所述目标仓库中进行所述第一待合并版本文件和所述第二待合并版本文件的合并操作出现冲突时,向所述终端设备发送分支合并失败的第二提示信息,以使所述终端设备向所述用户显示所述第二提示信息。9.根据权利要求8所述的方法,其特征在于,所述第二提示信息还至少包括以下之一:分支合并失败原因、需手动处理提示信息、处理人信息和冲突文件。10.一种分支版本合并方法,其特征在于,所述方法应用于版本管理服务器,所述版本管理服务器与服务端连接;所述版本管理服务器包括多个分支;每个分支包括至少一个版本文件;所述方法包括:接收所述服务端发送的目标版本号和目标分支号;根据所述目标版本号和所述目标分支号,确定第一分支下的第一待合并版本文件和第二分支下的第二待合并版本文件;其中,合并方向为从第一分支到所述第二分支;向所...

【专利技术属性】
技术研发人员:虞正平周宇晗
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

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

1