CN104461670B - 多项目公用代码管理方法 - Google Patents
多项目公用代码管理方法 Download PDFInfo
- Publication number
- CN104461670B CN104461670B CN201410674138.XA CN201410674138A CN104461670B CN 104461670 B CN104461670 B CN 104461670B CN 201410674138 A CN201410674138 A CN 201410674138A CN 104461670 B CN104461670 B CN 104461670B
- Authority
- CN
- China
- Prior art keywords
- log
- code
- incorporated
- present
- record list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明揭示了一种多项目公用代码管理方法,所述方法包括如下步骤:步骤S1、建立严重问题记录列表;步骤S2、在每次编译环境监测完毕后,强制更新此必须合入设定的严重问题记录列表,用repo获取当前所有git库的更新log;步骤S3、根据哈希值查找严重问题记录列表中的哈希值是否都在正在编译程序的log文件中存在;若不存在,停止编译,弹出警告提醒;若存在,则进行下一步的编译机制。本发明提出的多项目重大问题合入防呆方法,主要是针对多项目公用代码,当重大问题发现并及时解决时,确保所有的使用该公共代码的项目客户能及时的自主选择合入,防止遗漏此问题,流入产品线。
Description
技术领域
本发明属于计算机软件技术领域,涉及一种代码管理方法,尤其涉及一种多项目公用代码管理方法。
背景技术
随着通讯技术的发展,手机已进入千家万户,成为人们必不可少的联络工具。而手机型号越来越多,平台种类越发负责,在代码编译过程中存在的兼容管理问题愈发凸显。
长久以来,手机的项目管理中,往往会多个客户共用一套代码,而每个客户在测试中碰到的严重问题,有些是需要修改到公共代码,即使修改上传了,也只能保证此客户的版本合入此严重A类问题,无法确保使用同一套代码的其他客户也将此A类问题同步合入。若每个客户都全部更新到最新编译,易将其他未知问题带入。
有鉴于此,如今迫切需要设计一种新的代码管理方式,以便克服现有代码编译过程的上述缺陷。
发明内容
本发明所要解决的技术问题是:提供一种多项目公用代码管理方法,可提高代码编译的速度及兼容性。
为解决上述技术问题,本发明采用如下技术方案:
一种多项目公用代码管理方法,所述方法包括如下步骤:
步骤S1、建立严重问题记录列表;
步骤S2、在每次编译环境监测完毕后,强制更新必须合入设定的严重问题记录列表,用报告repo获取当前所有代码管理仓库的更新提交记录日志log;
步骤S3、根据哈希值查找严重问题记录列表中的哈希值是否都在正在编译程序的log文件中存在;若不存在,停止编译,弹出警告提醒;若存在,则进行下一步的编译机制。
作为本发明的一种优选方案,步骤S3中,查询严重问题记录列表中的每项记录的修改标识change-ID是否都存在于log文件中。
作为本发明的一种优选方案,步骤S3中,获取当前编译客户的平台项目,根据平台项目,遍历必须合入设定的严重问题记录列表中的修改标识change-id,是否在提交记录日志文字文件log.log中存在。
作为本发明的一种优选方案,步骤S3中,若文件的修改标识change-id存在于提交记录日志文字文件log.log中,继续判断下一条,所有全判断存在后,继续编译;
若不存在,则停止编译,弹出提示需要同步代码的修改标识Change-ID号,代码编译者即可根据此号在评审服务器cherrit上查询需要合入的代码内容,做选择合入。
作为本发明的一种优选方案,严重问题记录列表是进行重大问题修改的修改人员来维护的,若确认需要所有项目客户版本合入,则填入记录列表项,包含:平台,项目,客户,问题描述,修改人,以及修改标识change-id,每个信息都是确保能找到唯一的修改。
作为本发明的一种优选方案,使用陈列所有仓库的提交日志到一个文件内,文件名为log.log,获取代码所有的上传记录到log.log文件内。
本发明的有益效果在于:本发明提出的多项目重大问题合入防呆方法,主要是针对多项目公用代码,当重大问题发现并及时解决时,确保所有的使用该公共代码的项目客户能及时的自主选择合入,防止遗漏此问题,流入产品线。本发明可提高代码编译的速度及兼容性。
附图说明
图1为本发明多项目公用代码管理方法的流程图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
实施例一
请参阅图1,本发明揭示了一种多项目公用代码管理方法,所述方法包括如下步骤:
【步骤S1】建立严重问题记录列表。严重问题记录列表是进行重大问题修改的修改人员来维护的,若确认需要所有项目客户版本合入,则填入记录列表项,包含:平台,项目,客户,问题描述,修改人,以及修改标识change-id,每个信息都是确保能找到唯一的修改。
【步骤S2】在每次编译环境监测完毕后,强制更新必须合入设定的严重问题记录列表,用报告repo获取当前所有代码管理仓库的更新提交记录日志log。
强制更新是指同步到目前远端服务器上的产品线上的最新修改到本地。根据的是产品线上的提交记录去进行更新。与前半句编译环境监测关系不大,此处主要是重点强调此时更新的时间点,必须在开始编译前夕进行此操作,否则一是浪费时间,二是容易造成遗漏修改的合入。
本实施例中,使用repo forall-c git log>log.log(即陈列所有仓库的提交日志到一个文件内,文件名叫log.log)获取代码所有的上传记录到log.log文件内。此命令是针对android的MTK平台,不同的平台系统,管理代码机制不同,运用方法不同,但都在本专利的保护范围之内。
【步骤S3】根据哈希值查找严重问题记录列表中的哈希值是否都在正在编译程序的log文件中存在;若不存在,停止编译,弹出警告提醒;若存在,则进行下一步的编译机制。
步骤S3中,查询严重问题记录列表中的每项记录的修改标识change-ID是否都存在于log文件中。具体地,获取当前编译客户的平台项目,根据平台项目,遍历重大必须合入修改的excel记录表中的修改标识change-id,是否在log.log文件中存在。
若文件的修改标识change-id存在于log.log文件中,继续判断下一条,所有全判断存在后,继续编译;若不存在,则停止编译,弹出提示需要同步代码的修改标识Change-ID号,代码编译者即可根据此号在评审服务器cherrit上查询需要合入的代码内容,做选择合入。
实施例二
本发明揭示一种多项目公用代码管理方法,建立一个A类严重问题excel记录列表,在每次编译环境监测完毕后,强制更新此必须合入A类严重问题excel记录列表,用repo获取当前所有git库的更新log,再根据哈希值查找excel记录表格中的哈希值是否都在此log文件中存在,若不存在,停止编译,弹出警告提醒;若存在,则进行下一步的编译机制。
所述方法包括以下几个步骤:
①强制更新A类严重问题excel记录列表。
严重问题excel记录列表是进行重大问题修改的修改人来维护的,若确认需要所有项目客户版本合入,则填入记录列表项,包含:平台,项目,客户,问题描述,修改人,以及change-id,每个信息都是确保能找到唯一的修改。
②获取当前代码所有git库的上传记录log.log文件。
本实施例中,使用repo forall-c git log>log.log获取代码所有的上传记录到log.log文件内。
③查询,查询①中的每项记录的change-ID是否都存在在①中。
本实施例中,获取当前编译客户的平台项目,根据平台、项目,遍历①中的change-id,是否在log.log中存在。
④判断,根据③记录的结果来决定是否继续编译。
若存在,继续判断下一条,所有全判断存在后,继续编译;若不存在,则停止编译,弹出提示需要同步的代码Change-ID号,代码编译者即可根据此号在cherrit上查询需要合入的代码内容,做选择合入。
综上所述,本发明提出的多项目重大问题合入防呆方法,主要是针对多项目公用代码,当重大问题发现并及时解决时,确保所有的使用该公共代码的项目客户能及时的自主选择合入,防止遗漏此问题,流入产品线。本发明可提高代码编译的速度及兼容性。
这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。
Claims (5)
1.一种多项目公用代码管理方法,其特征在于,所述方法包括如下步骤:
步骤S1、建立严重问题记录列表;严重问题记录列表是进行重大问题修改的修改人员来维护的,若确认需要所有项目客户版本合入,则填入记录列表项,包含:平台,项目,客户,问题描述,修改人,以及修改标识change-id,每个信息都是确保能找到唯一的修改;
步骤S2、在每次编译环境监测完毕后,强制更新必须合入设定的严重问题记录列表,用报告repo获取当前所有代码管理仓库的更新提交记录日志log;
步骤S3、根据哈希值查找严重问题记录列表中的哈希值是否都在正在编译程序的log文件中存在;若不存在,停止编译,弹出警告提醒;若存在,则进行下一步的编译机制。
2.根据权利要求1所述的多项目公用代码管理方法,其特征在于:
步骤S3中,查询严重问题记录列表中的每项记录的修改标识change-ID是否都存在于log文件中。
3.根据权利要求2所述的多项目公用代码管理方法,其特征在于:
步骤S3中,获取当前编译客户的平台项目,根据平台项目,遍历必须合入设定的严重问题记录列表中的修改标识change-id,是否在提交记录日志文字文件log.log中存在。
4.根据权利要求3所述的多项目公用代码管理方法,其特征在于:
步骤S3中,若文件的修改标识change-id存在于提交记录日志文字文件log.log中,继续判断下一条,所有全判断存在后,继续编译;
若不存在,则停止编译,弹出提示需要同步代码的修改标识Change-ID号,代码编译者即可根据此号在评审服务器cherrit上查询需要合入的代码内容,做选择合入。
5.根据权利要求1所述的多项目公用代码管理方法,其特征在于:
使用陈列所有仓库的提交日志到一个文件内,文件名为log.log,获取代码所有的上传记录到log.log文件内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410674138.XA CN104461670B (zh) | 2014-11-21 | 2014-11-21 | 多项目公用代码管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410674138.XA CN104461670B (zh) | 2014-11-21 | 2014-11-21 | 多项目公用代码管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104461670A CN104461670A (zh) | 2015-03-25 |
CN104461670B true CN104461670B (zh) | 2017-11-28 |
Family
ID=52907775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410674138.XA Active CN104461670B (zh) | 2014-11-21 | 2014-11-21 | 多项目公用代码管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104461670B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304311A (zh) * | 2015-06-26 | 2018-07-20 | 中兴通讯股份有限公司 | 一种日志信息检测方法及装置 |
CN105373388A (zh) * | 2015-11-30 | 2016-03-02 | 西安闻泰电子科技有限公司 | 自动上传patch修改的代码管理方法 |
CN105487912B (zh) * | 2015-11-30 | 2020-01-10 | 无锡闻泰信息技术有限公司 | 公共问题修改多分支维护系统及方法 |
CN106855804B (zh) * | 2016-11-03 | 2020-05-19 | 广州视源电子科技股份有限公司 | 代码变更管控方法及装置 |
CN108376080A (zh) * | 2018-05-28 | 2018-08-07 | 郑州悉知信息科技股份有限公司 | 一种程序更新方法及装置 |
CN109445836A (zh) * | 2018-09-03 | 2019-03-08 | 平安普惠企业管理有限公司 | 一种源码文件的管理方法、服务器及计算机可读存储介质 |
CN111857881A (zh) * | 2020-07-21 | 2020-10-30 | 深圳创维-Rgb电子有限公司 | 基于repo的manifest仓库加载方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515232A (zh) * | 2008-02-21 | 2009-08-26 | 卓望数码技术(深圳)有限公司 | 一种软件持续集成系统及方法 |
CN102880546A (zh) * | 2012-09-03 | 2013-01-16 | 上海方正数字出版技术有限公司 | 一种基于xml数据库的软件集成测试方法及系统 |
US8612951B2 (en) * | 2009-04-21 | 2013-12-17 | Oracle International Corporation | Method of determining which computer program functions are changed by an arbitrary source code modification |
-
2014
- 2014-11-21 CN CN201410674138.XA patent/CN104461670B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515232A (zh) * | 2008-02-21 | 2009-08-26 | 卓望数码技术(深圳)有限公司 | 一种软件持续集成系统及方法 |
US8612951B2 (en) * | 2009-04-21 | 2013-12-17 | Oracle International Corporation | Method of determining which computer program functions are changed by an arbitrary source code modification |
CN102880546A (zh) * | 2012-09-03 | 2013-01-16 | 上海方正数字出版技术有限公司 | 一种基于xml数据库的软件集成测试方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104461670A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104461670B (zh) | 多项目公用代码管理方法 | |
CN101573923B (zh) | 用于传播数字同步冲突的知识的传播方法 | |
US8655840B2 (en) | Method, apparatus and computer program product for sub-file level synchronization | |
CN107646186A (zh) | 用于提供内联回复的统一消息传送平台和接口 | |
CN107636641A (zh) | 用于处理附加至电子邮件消息的注释的统一消息传送平台 | |
CN106293311A (zh) | 基于移动应用的页面显示方法、客户端、服务器及平台 | |
CN106411650B (zh) | 一种分布式安全保密检查方法 | |
TW201503741A (zh) | 通信帳號各客戶端之間數據同步方法、裝置及伺服器 | |
WO2014101506A1 (zh) | 动态页面信息展示方法和动态页面信息展示系统 | |
CN104463508A (zh) | 一种多个工作流系统间的协同方法及装置 | |
Weiß et al. | Analyzing the essential attributes of nationally issued COVID-19 contact tracing apps: Open-source intelligence approach and content analysis | |
KR20120002344A (ko) | 파일 동기화 방법 및 장치 | |
CN103399776A (zh) | 可重用mock创建方法及系统 | |
CN105407143A (zh) | 一种标准数据的同步方法 | |
CN103795682B (zh) | 密码表单管理方法及装置 | |
Kalogianni et al. | LADM and INTERLIS as a perfect match for 3D cadastre | |
Karlin et al. | Situating the research to practice cycle for increased transformation in engineering education | |
US20150169782A1 (en) | Component Obsolescence Registry | |
Hunter et al. | Two perspectives on civil space traffic management implementation | |
CN104509028A (zh) | 在通信系统中更新个人信息的方法及装置 | |
Zhang et al. | A perspective on the current use of the phase distribution model for predicting milk‐to‐plasma drug concentration ratio | |
KR102215576B1 (ko) | 개체 식별자에 기초하여 웹 기반의 문서 공동 편집을 가능하게 하는 문서 편집 서버 및 그 동작 방법 | |
Roussel | To prepare for the future, skip the present. | |
Ertel | Broken Windows, Workfare, and the Battle for Public Space in Giuliani’s New York | |
Ojeda | Early Maladaptive Schemas, Personality, and Aggression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |