【技术实现步骤摘要】
代码更新方法、装置、电子设备和计算机可读存储介质
[0001]本专利技术涉及代码化产品开发
,具体涉及一种代码更新方法、装置、电子设备和计算机可读存储介质。
技术介绍
[0002]在一个服务器系列产品线的开发过程中,目前的代码同步方法繁琐且效率低下。具体来说,服务器系列产品线包括多个产品,该多个产品使用相同的基础代码库(Codebase),它们的代码大同小异,拥有大量的共用代码,相同的目录结构文件名称,只有少量部分代码是各产品独有的。在开发过程中如果对多个产品的共用代码部分进行修改,需要分别针对各个产品使用diff(Linux系统下一个生成差异文件(补丁)的工具)命令生成patch(Linux系统下根据差异文件(补丁)生成最新版本代码的工具)文件,然后将各个patch文件分别应用到对应的产品的源代码中,以对对应的产品进行修改。这种代码同步更新方式繁琐且效率低下。
技术实现思路
[0003]有鉴于此,本专利技术实施例提供了一种代码更新方法、装置、电子设备和计算机可读存储介质,以解决使用同一基础代码库的系列 ...
【技术保护点】
【技术特征摘要】
1.一种代码更新方法,其特征在于,所述方法包括:获取目标字符串,所述目标字符串为至少两个产品的源代码的共用代码,所述至少两个产品的源代码中的第一行间隔相同,所述第一行间隔为所述目标字符串所在的行与待修改的代码的第一行之间的间隔;将所述目标字符串与第一产品的源代码进行匹配,将所述第一产品中与所述目标字符串匹配的字符串所在行作为所述第一产品的第一目标代码的第一行;所述第一产品为所述至少两个产品中的一个产品,所述第一目标代码至少还包括所述待修改的代码以及所述第一行与所述待修改的代码之间的代码;针对所述第一产品的所述第一目标代码,生成补丁文件;将所述补丁文件分别应用至所述至少两个产品的所述第一目标代码。2.根据权利要求1所述的方法,其特征在于,所述目标字符串包括一个代码结构块内的全部或部分字符,所述部分字符为所述代码结构块内连续的字符。3.根据权利要求2所述的方法,其特征在于,所述获取目标字符串,包括:获取待修改的代码的第一行之前的N个代码结构块,N为正整数;判断所述N个代码结构块是否第一代码结构块,所述第一代码结构块是所述至少两个产品的源代码的共用代码结构块且在所述至少两个产品的源代码中与所述待修改的代码之间的行间隔相同;将其中一个所述第一代码结构块内的全部或部分字符确定为所述目标字符串。4.根据权利要求2所述的方法,其特征在于,所述获取目标字符串,包括:S101:获取所述待修改的代码的第一行之前且紧邻的第二代码结构块;S102:判断所述第二代码结构块是否满足第一条件,所述第一条件包括是所述至少两个产品的源代码的共用代码结构块且在所述至少两个产品的源代码中与所述待修改的代码之间的行间隔相同;S103:若是,则将所述第二代码结构块内的全部或部分字符确定为所述目标字符串;S104否则获取所述第二代码结构块之前且与所述第二代码结构块紧邻的代码结构块作为新的第二代码结构块;重复步骤S102
‑
S104,直至获取到满足所述第一条件的代码结构块,将满足所述第一条件的代码结构块中的全部或部分字符确定为所述目标字符串。5.根据权利要求1所述的方法,其特征在于,所述将所述补丁文件分别应用至所述至少两个产品的所述第一目标代码,包括:将所述目标字符串与所述至少两个产品中的第二产品的源代码进行匹配;将所述第二产品中与所述目标字符串匹配的代码所在的行确定为所述第一目标代码的第一行;从所述第一目标代码的第一行开始,按照所述补丁文件中指示的待修改行,定位所述待修改的代码所在行并进行修改。6.根据权利要求1所述的方法,其特征在于,所述至少两个产品使用相...
【专利技术属性】
技术研发人员:刘波,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。