[發(fā)明專利]軟件程序的基線版本管理方法及系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201110221350.7 | 申請(qǐng)日: | 2011-08-03 |
| 公開(公告)號(hào): | CN102915233A | 公開(公告)日: | 2013-02-06 |
| 發(fā)明(設(shè)計(jì))人: | 母天石 | 申請(qǐng)(專利權(quán))人: | 騰訊科技(深圳)有限公司 |
| 主分類號(hào): | G06F9/44 | 分類號(hào): | G06F9/44;G06F17/30 |
| 代理公司: | 廣州華進(jìn)聯(lián)合專利商標(biāo)代理有限公司 44224 | 代理人: | 何平;曾旻輝 |
| 地址: | 518044 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 軟件 程序 基線 版本 管理 方法 系統(tǒng) | ||
【技術(shù)領(lǐng)域】
本發(fā)明涉及軟件技術(shù),尤其涉及一種軟件程序的基線版本管理方法及系統(tǒng)。
【背景技術(shù)】
在軟件開發(fā)中,很多情況下都需要多人團(tuán)隊(duì)并行開發(fā),在并行開發(fā)的模式下,多人會(huì)同時(shí)修改同一份代碼文件,并且修改后的代碼文件的上線時(shí)間也不同。當(dāng)代碼文件上線時(shí)若需要修改代碼文件,傳統(tǒng)的做法是獲取最新成功上線的版本,然而,最新成功上線的版本很可能是錯(cuò)誤的甚至是上線失敗的,因此,傳統(tǒng)的軟件的并行開發(fā)模式下,很難獲取到準(zhǔn)確的代碼版本。此外,傳統(tǒng)的處于一個(gè)大項(xiàng)目的子項(xiàng)目拆分,不能布置一個(gè)子項(xiàng)目的基線版本環(huán)境,也很難各自獲取到子項(xiàng)目的代碼。
【發(fā)明內(nèi)容】
基于此,有必要提供一種能得到準(zhǔn)確的代碼版本的軟件程序的基線版本管理方法。
一種軟件程序的基線版本管理方法,包括以下步驟:
對(duì)二進(jìn)制程序進(jìn)行源碼解析,記錄所述二進(jìn)制程序?qū)?yīng)的源碼文件;
監(jiān)控二進(jìn)制程序的上線單的狀態(tài);
根據(jù)所述上線單的狀態(tài)查找二進(jìn)制程序?qū)?yīng)的源碼文件,對(duì)所述查找到的源碼文件的基線版本號(hào)進(jìn)行更新。
在優(yōu)選的實(shí)施例中,所述源碼文件包括cpp文件及所述cpp文件引用的hpp文件;所述對(duì)二進(jìn)制程序進(jìn)行源碼解析,記錄二進(jìn)制程序?qū)?yīng)的源碼文件的步驟包括:
執(zhí)行指令,得到編譯中間結(jié)果;
對(duì)所述編譯中間結(jié)果進(jìn)行掃描,得到cpp文件組成及其引用的hpp文件組成;
將所述得到的cpp文件組成、hpp文件組成與二進(jìn)制程序的對(duì)應(yīng)關(guān)系記錄到二進(jìn)制源碼解析對(duì)應(yīng)表中。
在優(yōu)選的實(shí)施例中,所述根據(jù)所述上線單的狀態(tài)查找二進(jìn)制程序?qū)?yīng)的源碼文件,對(duì)所述查找到的源碼文件的基線版本號(hào)進(jìn)行更新的步驟包括:
當(dāng)所述上線單的狀態(tài)為全面上線成功時(shí),查找二進(jìn)制程序?qū)?yīng)的源碼文件,從版本管理服務(wù)器獲取所述源碼文件的當(dāng)前版本號(hào),將所述源碼文件的當(dāng)前版本號(hào)記錄為所述源碼文件對(duì)應(yīng)的當(dāng)前基線版本號(hào)。
在優(yōu)選的實(shí)施例中,所述對(duì)所述源碼文件的基線版本號(hào)進(jìn)行更新的步驟包括:
當(dāng)所述上線單的狀態(tài)為全面回退時(shí),查找二進(jìn)制程序?qū)?yīng)的源碼文件,將所述源碼文件的當(dāng)前基線版本號(hào)修改為上一版本號(hào)。
在優(yōu)選的實(shí)施例中,所述方法還包括:創(chuàng)建基線版本數(shù)據(jù)表,所述基線版本數(shù)據(jù)表用于記錄源碼文件與源碼文件的當(dāng)前基線版本號(hào)、至少一個(gè)歷史基線版本號(hào)的對(duì)應(yīng)關(guān)系。
此外,還有必要提供一種能得到準(zhǔn)確的代碼版本的軟件程序的基線版本管理系統(tǒng)。
一種軟件程序的基線版本管理系統(tǒng),包括:
源碼解析模塊,用于對(duì)二進(jìn)制程序進(jìn)行源碼解析,記錄所述二進(jìn)制程序?qū)?yīng)的源碼文件;
監(jiān)控模塊,用于監(jiān)控二進(jìn)制程序的上線單的狀態(tài);
基線版本管理模塊,用于根據(jù)所述上線單的狀態(tài)查找二進(jìn)制程序?qū)?yīng)的源碼文件,對(duì)所述查找到的源碼文件的基線版本號(hào)進(jìn)行更新。
在優(yōu)選的實(shí)施例中,所述源碼文件包括cpp文件及所述cpp文件引用的hpp文件;所述源碼解析模塊包括:
指令執(zhí)行模塊,用于執(zhí)行指令,得到編譯中間結(jié)果;
掃描模塊,用于對(duì)所述編譯中間結(jié)果進(jìn)行掃描,得到cpp文件組成及其引用的hpp文件組成;
記錄模塊,用于將所述得到的cpp文件組成、hpp文件組成與二進(jìn)制程序的對(duì)應(yīng)關(guān)系記錄到二進(jìn)制源碼解析對(duì)應(yīng)表中。
在優(yōu)選的實(shí)施例中,所述基線版本管理模塊用于當(dāng)所述上線單的狀態(tài)為全面上線成功時(shí),查找二進(jìn)制程序?qū)?yīng)的源碼文件,從版本管理服務(wù)器獲取所述源碼文件的當(dāng)前版本號(hào),將所述源碼文件的當(dāng)前版本號(hào)記錄為所述源碼文件對(duì)應(yīng)的當(dāng)前基線版本號(hào)。
在優(yōu)選的實(shí)施例中,所述基線版本管理模塊還用于當(dāng)所述上線單的狀態(tài)為全面回退時(shí),查找二進(jìn)制程序?qū)?yīng)的源碼文件,將所述源碼文件的當(dāng)前基線版本號(hào)修改為上一版本號(hào)。
在優(yōu)選的實(shí)施例中,基線版本數(shù)據(jù)表創(chuàng)建模塊,用于創(chuàng)建基線版本數(shù)據(jù)表,所述基線版本數(shù)據(jù)表用于記錄源碼文件與源碼文件的當(dāng)前基線版本號(hào)、至少一個(gè)歷史基線版本號(hào)的對(duì)應(yīng)關(guān)系。
上述軟件程序的基線版本管理方法及系統(tǒng),通過監(jiān)控二進(jìn)制程序的上線單的狀態(tài),根據(jù)上線單的狀態(tài)對(duì)上線的二進(jìn)制程序?qū)?yīng)的源碼文件的基線版本號(hào)進(jìn)行更新,由于對(duì)二進(jìn)制程序的源碼文件的基線版本號(hào)進(jìn)行了有效的管理,因此能夠得到準(zhǔn)確的代碼版本。
【附圖說明】
圖1為一個(gè)實(shí)施例中軟件程序的基線版本管理方法的流程示意圖;
圖2為圖1中步驟S102的流程示意圖;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于騰訊科技(深圳)有限公司,未經(jīng)騰訊科技(深圳)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110221350.7/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法
- 功能限制程序、安裝程序生成程序和程序存儲(chǔ)介質(zhì)
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序創(chuàng)建裝置,程序創(chuàng)建方法和程序
- 程序生成裝置、程序生產(chǎn)方法及程序
- 程序生成裝置、程序生成程序以及程序生成方法
- 程序生成裝置、程序生成方法及程序生成程序
- 程序開發(fā)支持裝置、程序開發(fā)支持方法以及存儲(chǔ)介質(zhì)
- 程序執(zhí)行輔助裝置、程序執(zhí)行輔助方法及程序執(zhí)行輔助程序
- 程序?qū)φ昭b置、程序?qū)φ辗椒俺绦驅(qū)φ粘绦?/a>





