代碼變更控制系統(tǒng)及方法
【專利摘要】本發(fā)明涉及軟件代碼變更控制技術,其公開了一種代碼變更控制方法,解決傳統(tǒng)技術中的代碼變更控制方式增加出錯率及操作復雜、效率低的問題。該控制方法可以概括為:開發(fā)人員新建變更以及在本地創(chuàng)建patch文件,然后將patch文件連同版本庫路徑一同上傳至變更服務器并在變更單中填寫審核人員信息,系統(tǒng)對變更單的流轉進行管理,根據(jù)變更單當前狀態(tài)設置其工作流狀態(tài),代碼處理器對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,調用補丁工具應用該補丁文件到工作副本生成對應代碼,然后調用版本管理工具代理提交工作副本,完成代碼提交。此外,本發(fā)明還公開了相應的代碼變更控制系統(tǒng),適用于代碼變更控制管理。
【專利說明】代碼變更控制系統(tǒng)及方法
【技術領域】
[0001]本發(fā)明涉及軟件代碼變更控制技術,特別涉及一種代碼變更控制系統(tǒng)及方法。
【背景技術】
[0002]計算機技術和網(wǎng)絡迅速發(fā)展的今天,各類應用軟件,儀器設備已經(jīng)融入人們的工作,學習,生活中。工作網(wǎng)絡化,生產(chǎn)自動化,服務智能化,已經(jīng)成為各大中小型企業(yè)提高工作效率,減小成本,開發(fā)客戶等的主要方法,對這些企業(yè)來說軟件和設備一旦出現(xiàn)故障就可能造成災難性的,不可挽回的損失,因此軟件質量變得尤為重要,而代碼的質量直接影響軟件質量,代碼變更控制作為代碼質量控制的重要部分成為各IT企業(yè)迫切需要解決的問題。
[0003]傳統(tǒng)技術中的代碼變更控制是由開發(fā)人員在本地通過比較工具導出代碼修改后的補丁(patch)文件,將對比文件傳給變更審核人員進行代碼審核,審核通過后再由開發(fā)人員通過本地客戶端向版本庫提交代碼。這種方式不能有效保證開發(fā)人員提交的代碼是經(jīng)過變更審核人審核的代碼,可能帶來漏提,多提的問題,最終導致質量事故;并且這種方式需要開發(fā)人員逐個進行文件對比,且審核通過后還需要開發(fā)人員手動提交代碼,因而操作復雜、效率低。
【發(fā)明內容】
[0004]本發(fā)明所要解決的技術問題是:提出一種代碼變更控制系統(tǒng)及方法,解決傳統(tǒng)技術中的代碼變更控制方式增加出錯率及操作復雜、效率低的問題。
[0005]本發(fā)明解決上述技術問題所采用的方案是:代碼變更控制系統(tǒng),包括:
[0006]變更管理模塊,用于完成變更的創(chuàng)建、查看及在開發(fā)人員提交變更后生成變更單,將變更單提交給工作流管理模塊;
[0007]工作流管理模塊,用于控制變更單的流轉以及設置工作流狀態(tài);
[0008]代碼處理器模塊,用于對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,調用補丁工具應用該補丁文件到工作副本生成對應代碼,然后調用版本管理工具代理提交工作副本,完成代碼提交;
[0009]版本管理工具代理模塊,用于提供操作版本庫的接口。
[0010]進一步,所述變更單包括補丁文件及創(chuàng)建補丁文件的目錄對應的版本庫路徑。
[0011]進一步,所述補丁文件是指開發(fā)人員通過版本管理工具客戶端或者補丁工具創(chuàng)建本地代碼修改后的差異文件。
[0012]進一步,所述工作流管理模塊用于控制變更單的流轉以及設置工作流狀態(tài)具體包括:
[0013]工作流管理模塊在收到變更單后讀取變更單的工作流程,設置變更單的工作流狀態(tài)為“待審核”,并通知該變更單的審核人員;在變更審核通過后,設置變更單的工作流狀態(tài)為“等待變更提交”,并通知代碼處理器模塊解析變更、提交代碼;在代碼處理器模塊完成代碼提交后,設置變更單的工作流狀態(tài)為“待屬主確認”;在開發(fā)人員確認變更提交完成后關閉該變更單。
[0014]進一步,所述代碼處理器模塊用于對變更中的補丁文件進行解析,調用版本管理工具下載文件工作副本具體包括:
[0015]獲取變更單中的補丁文件,解析該補丁文件,生成每個需要變更文件所在版本庫的全路徑,根據(jù)路徑調用版本管理工具代理下載文件工作副本。
[0016]此外,本發(fā)明的另一目的還在于,提出一種代碼變更控制方法,其包括以下步驟:
[0017]a.開發(fā)人員新建一個變更,并在本地創(chuàng)建補丁文件;
[0018]b.將補丁文件和創(chuàng)建補丁文件的目錄對應的版本庫路徑上傳至變更服務器;
[0019]c.填寫該變更的審核人員,提交變更;
[0020]d.變更管理模塊生成變更單并提交給工作流管理模塊;
[0021]e.工作流管理模塊讀取變更單工作流程,設置變更單的工作流狀態(tài)為“待審核”,并通知該變更的審核人員;
[0022]f.在審核人員對該變更審核通過后,設置變更單的工作流狀態(tài)為“等待變更提交”并通知代碼處理器模塊;
[0023]g.代碼處理器模塊對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,調用補丁工具應用該補丁文件到工作副本生成對應代碼,然后調用版本管理工具代理提交工作副本,完成代碼提交;
[0024]h.工作流管理模塊設置變更單的工作流狀態(tài)為“待屬主確認”;
[0025]1.在開發(fā)人員確認變更提交完成后關閉該變更單。
[0026]進一步,步驟a中,所述在本地創(chuàng)建補丁文件是指:開發(fā)人員通過版本管理工具客戶端或者補丁工具創(chuàng)建本地代碼修改后的差異文件。
[0027]進一步,步驟g中,所述代碼處理器模塊對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,具體包括:
[0028]獲取變更單中的補丁文件,解析該補丁文件,生成每個需要變更文件所在版本庫的全路徑,根據(jù)路徑調用版本管理工具代理下載文件工作副本。
[0029]本發(fā)明的有益效果是:通過對補丁文件的有效利用,從技術上保證了變更審核人員審核的代碼即為最終提交到版本庫中的代碼,避免多提、漏提帶來的質量問題,也方便了代碼審核和代碼提交;同時由于變更控制的流程都是通過系統(tǒng)控制,可與各種流程管理相關的系統(tǒng)集成,形成從需求到代碼提交的綜合解決方案,將各種復雜的流程統(tǒng)一管理,使得流程簡單化、規(guī)范化,從而提高企業(yè)的生產(chǎn)效率。
【專利附圖】
【附圖說明】
[0030]圖1為代碼變更控制系統(tǒng)結構框圖;
[0031 ] 圖2為代碼變更控制方法實施例流程圖。
【具體實施方式】
[0032]本發(fā)明旨在提出一種代碼變更控制系統(tǒng)及方法,解決傳統(tǒng)技術中的代碼變更控制方式增加出錯率及操作復雜、效率低的問題。
[0033]下面結合附圖及實施例對本發(fā)明的方案作進一步的描述:[0034]參見圖1,本發(fā)明中的代碼變更控制系統(tǒng)包括:
[0035]變更管理模塊,用于完成變更的創(chuàng)建、查看及在開發(fā)人員提交變更后生成變更單,將變更單提交給工作流管理模塊;
[0036]工作流管理模塊,用于控制變更單的流轉以及設置工作流狀態(tài);
[0037]代碼處理器模塊,用于對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,調用補丁工具應用該補丁文件到工作副本生成對應代碼,然后調用版本管理工具代理提交工作副本,完成代碼提交;
[0038]版本管理工具代理模塊,用于提供操作版本庫(如:SVN)的接口。
[0039]基于上述變更控制系統(tǒng)實現(xiàn)的控制方法實施例流程如圖2所示,其包括以下步驟:
[0040]201、創(chuàng)建變更:開發(fā)人員通過本發(fā)明的代碼變更控制系統(tǒng)中的變更管理模塊新建變更;
[0041]202、創(chuàng)建patch文件:開發(fā)人員通過版本管理工具客戶端或者patch工具創(chuàng)建本地代碼修改后的patch文件;
[0042]203、上傳patch文件及路徑:將patch文件和創(chuàng)建patch文件的目錄對應的版本庫路徑通過web頁面一起上傳至變更服務器;
[0043]204、填寫審核人:開發(fā)人員在變更單中填寫該變更單的審核人員信息;
[0044]205、提交變更:向系統(tǒng)提交該變更,變更管理模塊生成相應的變更單,將變更單提交給工作流管理模塊;
[0045]206、讀取變更單工作流程:工作流管理模塊根據(jù)變更單的類型讀取該變更單的工作流程(本系統(tǒng)的工作流程狀態(tài)為:處理中-待審核-等待變更提交-待屬主確認-關閉);
[0046]207、設置變更流程狀態(tài):工作流管理模塊設置變更單的工作流狀態(tài)為“待審核”;
[0047]208、通知變更審核人:工作流管理模塊通知該變更單的審核人員;
[0048]209、審核通過:該變更單的相應審核人員對該變更單進行審核,在審核通過后,工作流管理模塊設置變更單的工作流狀態(tài)為“等待變更提交”,并通知代碼處理器模塊;
[0049]210、patch文件解析:代碼處理器獲取變更單中的patch文件和對應路徑,解析patch文件,生成每個需要變更文件所在版本庫(SVN)的全路徑;
[0050]211、下載需要提交的工作副本:代碼處理器模塊根據(jù)路徑調用版本管理工具代理下載文件工作副本;、
[0051]212、應用patch文件:代碼處理器模塊調用Patch工具應用patch文件到工作副本,生成和開發(fā)人員本地一樣的代碼,從而保證提交的代碼就是審核過的代碼;
[0052]213、提交工作副本:代碼處理器模塊調用版本管理工具提交工作副本;
[0053]214、切換變更狀態(tài):工作流管理模塊設置變更單的工作流狀態(tài)為“待屬主確認”;
[0054]215、提交完成:在開發(fā)人員確認變更提交完成后關閉該變更單,即完成代碼提交。
[0055]需要說明的是,本發(fā)明要求保護的范圍包含但不僅限于上述實施例,本領域技術人員根據(jù)以上描述在不脫離本發(fā)明精神實質的情況下對本發(fā)明的技術內容作出的等同修改/替換,均在本發(fā)明的保護范圍之內。
【權利要求】
1.代碼變更控制系統(tǒng),其特征在于, 包括: 變更管理模塊,用于完成變更的創(chuàng)建、查看及在開發(fā)人員提交變更后生成變更單,將變更單提交給工作流管理模塊; 工作流管理模塊,用于控制變更單的流轉以及設置工作流狀態(tài); 代碼處理器模塊,用于對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,調用補丁工具應用該補丁文件到工作副本生成對應代碼,然后調用版本管理工具代理提交工作副本,完成代碼提交; 版本管理工具代理模塊,用于提供操作版本庫的接口。
2.如權利要求1所述的代碼變更控制系統(tǒng),其特征在于, 所述變更單包括補丁文件及創(chuàng)建補丁文件的目錄對應的版本庫路徑。
3.如權利要求2所述的代碼變更控制系統(tǒng),其特征在于, 所述補丁文件是指開發(fā)人員通過版本管理工具客戶端或者補丁工具創(chuàng)建本地代碼修改后的差異文件。
4.如權利要求1所述的代碼變更控制系統(tǒng),其特征在于, 所述工作流管理模塊用于控制變更單的流轉以及設置工作流狀態(tài)具體包括: 工作流管理模塊在收到變更單后讀取變更單的工作流程,設置變更單的工作流狀態(tài)為“待審核”,并通知該變更單的審核人員;在變更審核通過后,設置變更單的工作流狀態(tài)為“等待變更提交”,并通知代碼處理器模塊解析變更、提交代碼;在代碼處理器模塊完成代碼提交后,設置變更單的工作流狀態(tài)為“待屬主確認”;在開發(fā)人員確認變更提交完成后關閉該變更單。
5.如權利要求1-4任意一項所述的代碼變更控制系統(tǒng),其特征在于, 所述代碼處理器模塊用于對變更中的補丁文件進行解析,調用版本管理工具下載文件工作副本具體包括: 獲取變更單中的補丁文件,解析該補丁文件,生成每個需要變更文件所在版本庫的全路徑,根據(jù)路徑調用版本管理工具代理下載文件工作副本。
6.代碼變更控制方法,其特征在于,包括以下步驟: a.開發(fā)人員新建一個變更,并在本地創(chuàng)建補丁文件; b.將補丁文件和創(chuàng)建補丁文件的目錄對應的版本庫路徑上傳至變更服務器; c.填寫該變更的審核人員,提交變更; d.變更管理模塊生成變更單并提交給工作流管理模塊; e.工作流管理模塊讀取變更單工作流程,設置變更單的工作流狀態(tài)為“待審核”, 并通知該變更的審核人員; f.在審核人員對該變更審核通過后,設置變更單的工作流狀態(tài)為“等待變更提交”并通知代碼處理器模塊; g.代碼處理器模塊對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,調用補丁工具應用該補丁文件到工作副本生成對應代碼,然后調用版本管理工具代理提交工作副本,完成代碼提交; h.工作流管理模塊設置變更單的工作流狀態(tài)為“待屬主確認”;l.在開發(fā)人員確認變更提交完成后關閉該變更單。
7.如權利要求6所述的代碼變更控制方法,其特征在于, 步驟a中,所述在本地創(chuàng)建補丁文件是指:開發(fā)人員通過版本管理工具客戶端或者補丁工具創(chuàng)建本地代碼修改后的差異文件。
8.如權利要求5所述的代碼變更控制方法,其特征在于, 步驟g中,所述代碼處理器模塊對變更中的補丁文件進行解析,調用版本管理工具代理下載文件工作副本,具體包括: 獲取變更單中的補丁文件,解析該補丁文件,生成每個需要變更文件所在版本庫的全路徑,根據(jù)路徑調用版本管理工具代理下載文件工作副本。
【文檔編號】G06F9/44GK103473075SQ201310444498
【公開日】2013年12月25日 申請日期:2013年9月23日 優(yōu)先權日:2013年9月23日
【發(fā)明者】鄧海紅 申請人:邁普通信技術股份有限公司