首页> 中国专利> 公共问题修改多分支维护系统及方法

公共问题修改多分支维护系统及方法

摘要

本发明揭示了一种公共问题修改多分支维护系统及方法,所述系统包括:hash_list修改模块、多分支辨析模块、分支创建模块、合入执行模块;通过脚本将所述hash_list修改模块所列出的hash_list自动上传合入到分支创建模块或/和分支创建模块所分析出的branch_list。本发明提出的公共问题修改多分支维护系统及方法,可提高软件维护效率。本发明尽可能采用替代人工录入的脚本执行方法,即帮助软件人员解决了多条修改需要多分支合入提交,解决软件人员行业存在的多分支管理维护难问题,也解决了多分支验证所花费的时间;本发明在多分支维护时,效果尤为明显。

著录项

  • 公开/公告号CN105487912A

    专利类型发明专利

  • 公开/公告日2016-04-13

    原文格式PDF

  • 申请/专利权人 西安闻泰电子科技有限公司;

    申请/专利号CN201510866727.2

  • 发明设计人 李蕊;

    申请日2015-11-30

  • 分类号G06F9/45(20060101);

  • 代理机构31213 上海新天专利代理有限公司;

  • 代理人王敏杰

  • 地址 710075 陕西省西安市高新区高新六路42号中清大厦10楼

  • 入库时间 2023-12-18 15:29:11

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-01-10

    授权

    授权

  • 2019-12-27

    专利申请权的转移 IPC(主分类):G06F8/41 登记生效日:20191210 变更前: 变更后: 申请日:20151130

    专利申请权、专利权的转移

  • 2017-08-08

    实质审查的生效 IPC(主分类):G06F9/45 申请日:20151130

    实质审查的生效

  • 2016-04-13

    公开

    公开

说明书

技术领域

本发明属于软件开发技术领域,涉及一种软件维护系统,尤其涉及一种公共问题修改多分支维护系统;同时,本发明还涉及一种公共问题修改多分支维护方法。

背景技术

现有的多分支维护方式,都是软件人员根据自己需要合入的hash值,来采用gitcherry-pick或者gitmerge的方法,人工建立新的分支回退到相应节点,来进行合入的。

现有方式占用了研发人员大量的时间,而且研发人员存在多分支提交无法及时验证编译,同时解决冲突不当,导致编译出问题的情况频频发生。

有鉴于此,如今迫切需要设计一种新的多分支维护方式,以便克服现有维护方式存在的上述缺陷。

发明内容

本发明所要解决的技术问题是:提供一种公共问题修改多分支维护系统,可提高软件维护效率。

此外,本发明还提供一种公共问题修改多分支维护方法,可提高软件维护效率。

为解决上述技术问题,本发明采用如下技术方案:

一种公共问题修改多分支维护系统,所述系统包括:hash_list修改模块、多分支辨析模块、分支创建模块、合入执行模块;

所述修改hash_list模块通过手动输入备份的方式做记录,或者由历史log关键字自行检索出生成;

所述多分支辨析branch_list模块采用的git方法,使用python脚本语言获取生成,或者使用管理代码方法工具或手动录入;

所述分支创建模块用以将上述branch_list和hash_list使用git方法,新建本地分支追踪到远端,以供后续使用;

合入执行模块用以使用gitcherry-pick方式,通过轮训的方法逐一项合入hash_list到branch_list中去;

每次轮询合入后,根据界面提示字串是否包含gitcommit-c来确保合入是否冲突,以提示用户自行手动合入;

同时,每次轮询合入后,使用单独编译的方式,对合入git库进行编译验证,以确保初步的编译通过。

一种公共问题修改多分支维护系统,所述系统包括:hash_list修改模块、多分支辨析模块、分支创建模块、合入执行模块;

通过脚本将所述hash_list修改模块所列出的hash_list自动上传合入到分支创建模块或/和分支创建模块所分析出的branch_list。

作为本发明的一种优选方案,所述修改hash_list模块通过手动输入备份的方式做记录,或者由历史log关键字自行检索出生成;

所述多分支辨析branch_list模块采用的git方法,使用python脚本语言获取生成,或者使用管理代码方法工具或手动录入。

作为本发明的一种优选方案,所述分支创建模块用以将上述branch_list和hash_list使用git方法,新建本地分支追踪到远端,以供后续使用。

作为本发明的一种优选方案,合入执行模块用以使用gitcherry-pick方式,通过轮训的方法逐一项合入hash_list到branch_list中去;

每次轮询合入后,根据界面提示字串是否包含gitcommit-c来确保合入是否冲突,以提示用户自行手动合入;

同时,每次轮询合入后,使用单独编译的方式,对合入git库进行编译验证,以确保初步的编译通过。

一种公共问题修改多分支维护方法,所述方法包括:通过脚本将所述hash_list修改模块所列出的hash_list自动上传合入到分支创建模块或/和分支创建模块所分析出的branch_list。

作为本发明的一种优选方案,所述方法包括如下步骤:

修改hash_list步骤,通过手动输入备份的方式做记录,或者由历史log关键字自行检索出生成;

多分支辨析branch_list步骤,采用的git方法,使用python脚本语言获取生成,或者使用管理代码方法工具或手动录入;

分支创建步骤,将上述branch_list和hash_list使用git方法,新建本地分支追踪到远端,以供后续使用;

合入执行步骤,使用gitcherry-pick方式,通过轮训的方法逐一项合入hash_list到branch_list中去。

作为本发明的一种优选方案,每次轮询合入后,根据界面提示字串是否包含gitcommit-c来确保合入是否冲突,以提示用户自行手动合入;

同时,每次轮询合入后,使用单独编译的方式,对合入git库进行编译验证,以确保初步的编译通过。

作为本发明的一种优选方案,所述方法具体包括如下步骤:

(1)新建hash_list.txt,查找需要合入的问题hash备份,TP模拟PSENSOR校准起名为tp_psensor_hash_list.txt;在一次提交后,将所生成git库的提交都手动录入到tp_psensor_hash_list.txt;

(2)使用多分支辨析branch_list模块生成所需要录入的branch_list,使用repo命令获取当前的所有分支名,存入到branch_list数组,此部分模块在cherry-pick.pl中属于一个函数模块;

(3)使用分支创建模块搭建相应的环境,即调用分支创建模块的接口,开始执行合入,从branch_list中先获取一个分支名target_branch_1,新建分支追踪到远端最新代码并切换到target_branch_1,然后调用合入执行模块,即gitlog获取修改记录,循环判定tp_psensor_hash_list.txt中的每个hash是否在gitlog中,若存在,则继续下一个判定,即从branch_list中先获取第二个分支名target_branch_2,若不存在,则使用gitcherry-pick命令循环合入tp_psensor_hash_list.txt中的所有hash值;

(4)合入完成后,使用单独编译命令进行验证,合入代码是否存在异常,若正常则使用repoupload直接提交推送到远端。

本发明的有益效果在于:本发明提出的公共问题修改多分支维护系统及方法,可提高软件维护效率。本发明尽可能采用替代人工录入的脚本执行方法,即帮助软件人员解决了多条修改需要多分支合入提交,解决软件人员行业存在的多分支管理维护难问题,也解决了多分支验证所花费的时间;本发明在多分支维护时,效果尤为明显。

附图说明

图1为本发明公共问题修改多分支维护系统的组成示意图。

图2为实施例四中本发明公共问题修改多分支维护方法的流程图。

具体实施方式

下面结合附图详细说明本发明的优选实施例。

实施例一

请参阅图1,本发明揭示一种公共问题修改多分支维护系统,包括本发明包括:修改hash_list模块1、多分支辨析branch_list模块2、分支创建模块3、合入执行模块4。

所述修改hash_list模块1可以由很多种方法生成,本案例仅仅是手动输入备份的方式做记录,亦可由历史log关键字自行检索出生成。

所述多分支辨析branch_list模块2可以采用的git方法,使用python脚本语言获取生成,其余管理代码方法工具如svn,perl,shell,手动录入等均在本案例的保护范围以内。

所述分支创建模块3主要是将上述branch_list和hash_list使用git方法,新建本地分支追踪到远端,好供后续使用。本方案采用git方法创建,凡符合本发明思想的,维护方式,均属保护范围以内。

合入执行模块4可以使用gitcherry-pick方式,通过轮训的方法逐一项合入hash_list到branch_list中去,其他方式的库管理方式,均在本发明保护范围以内。

每次轮询合入后,会根据界面提示字串是否包含gitcommit-c来确保合入是否冲突,以提示用户自行手动合入。

同时,每次轮询合入后,都会使用单独编译的方式,对合入git库进行编译验证,以确保初步的编译通过。

合入执行模块4可以使用repo方式统一管理提交到代码服务器上,其他方式的库管理方式,均在本发明保护范围以内。

凡运用工具实现公共问题修改多分支维护的思想,均在此发明保护范围以内。

实施例二

本发明揭示了一种公共问题修改多分支维护系统,所述系统包括:hash_list修改模块、多分支辨析模块、分支创建模块、合入执行模块;通过脚本将所述hash_list修改模块所列出的hash_list自动上传合入到分支创建模块或/和分支创建模块所分析出的branch_list。

实施例三

一种公共问题修改多分支维护方法,所述方法包括:通过脚本将所述hash_list修改模块所列出的hash_list自动上传合入到分支创建模块或/和分支创建模块所分析出的branch_list。

所述方法具体包括如下步骤:

修改hash_list步骤:通过手动输入备份的方式做记录,或者由历史log关键字自行检索出生成;

多分支辨析branch_list步骤:采用的git方法,使用python脚本语言获取生成,或者使用管理代码方法工具或手动录入;

分支创建步骤:将上述branch_list和hash_list使用git方法,新建本地分支追踪到远端,以供后续使用;

合入执行步骤:使用gitcherry-pick方式,通过轮训的方法逐一项合入hash_list到branch_list中去。

每次轮询合入后,根据界面提示字串是否包含gitcommit-c来确保合入是否冲突,以提示用户自行手动合入;

同时,每次轮询合入后,使用单独编译的方式,对合入git库进行编译验证,以确保初步的编译通过。

实施例四

请参阅图2,本实施例以以android代码管理为例,本发明公共问题修改多分支维护方法包括如下步骤:

(1)新建hash_list.txt,查找需要合入的问题hash备份,例如:TP模拟PSENSOR校准起名为tp_psensor_hash_list.txt;在一次提交后,将所生成git库的提交都手动录入到tp_psensor_hash_list.txt。

(2)使用模块(2)多分支辨析branch_list模块生成所需要录入的branch_list,使用repo命令获取当前的所有分支名,存入到branch_list数组,此部分模块在cherry-pick.pl中属于一个函数模块。

(3)使用模块(3)分支创建模块,搭建相应的环境,即调用分支创建模块的接口,开始执行合入,从branch_list中先获取一个分支名target_branch_1,新建分支追踪到远端最新代码并切换到target_branch_1,然后调用(4)合入执行模块,即gitlog获取修改记录,循环判定tp_psensor_hash_list.txt中的每个hash是否在gitlog中,若存在,则继续下一个判定(即从branch_list中先获取第二个分支名target_branch_2),若不存在,则使用gitcherry-pick命令循环合入tp_psensor_hash_list.txt中的所有hash值。

(4)合入完成后,使用单独编译命令进行验证,合入代码是否存在异常,若正常则使用repoupload直接提交推送到远端。

综上所述,本发明提出的公共问题修改多分支维护系统及方法,可提高软件维护效率。本发明尽可能采用替代人工录入的脚本执行方法,即帮助软件人员解决了多条修改需要多分支合入提交,解决软件人员行业存在的多分支管理维护难问题,也解决了多分支验证所花费的时间;本发明在多分支维护时,效果尤为明显。

这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号