[發(fā)明專利]使用代碼克隆檢測的智能代碼差分有效
| 申請?zhí)枺?/td> | 201080070705.0 | 申請日: | 2010-12-15 |
| 公開(公告)號: | CN103262047B | 公開(公告)日: | 2016-11-16 |
| 發(fā)明(設(shè)計)人: | 劉未鵬;成功;S·康;戈頌;D·張;黨映農(nóng) | 申請(專利權(quán))人: | 微軟技術(shù)許可有限責(zé)任公司 |
| 主分類號: | G06F11/28 | 分類號: | G06F11/28 |
| 代理公司: | 上海專利商標(biāo)事務(wù)所有限公司 31100 | 代理人: | 段登新 |
| 地址: | 美國華*** | 國省代碼: | 美國;US |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 使用 代碼 克隆 檢測 智能 | ||
1.一種利用代碼克隆檢測來執(zhí)行智能代碼差分的方法,包括:
通過至少一個處理器執(zhí)行指令,響應(yīng)于執(zhí)行,所述指令導(dǎo)致操作被執(zhí)行,所述操作包括:
接收源代碼的至少兩個版本;
使用代碼克隆檢測來處理所述源代碼的所述至少兩個版本;以及
至少基于所述代碼克隆檢測的輸出來確定源代碼的所述至少兩個版本中的彼此對應(yīng)的不同部分。
2.如權(quán)利要求1所述的方法,其特征在于,還包括輸出代碼的至少兩個部分,其中代碼的所述至少兩個部分分別對應(yīng)于源代碼的所述至少兩個版本中的彼此對應(yīng)的部分。
3.如權(quán)利要求1所述的方法,其特征在于,源代碼的所述至少兩個版本包括源代碼的第一版本和所述源代碼的第二版本,并且其中所述處理包括處理第一分支中的所述第一版本以及處理第二分支中的所述第二版本。
4.如權(quán)利要求1所述的方法,其特征在于,所述確定包括確定所述源代碼的所述至少兩個版本中的彼此具有大于預(yù)定相似度水平的相似度水平的不同部分。
5.如權(quán)利要求1所述的方法,其特征在于,還包括通過網(wǎng)絡(luò)從客戶機設(shè)備訪問在服務(wù)器中提供的代碼克隆檢測。
6.一種利用代碼克隆檢測來執(zhí)行智能代碼差分的方法,包括:
通過至少一個計算設(shè)備,接收指示源代碼的至少兩個版本之間的對應(yīng)性的第一信息;
基于代碼克隆檢測技術(shù),確定源代碼的所述至少兩個版本之間的所述對應(yīng)性的表征,其中所述表征包括語義信息;以及
輸出指示所述表征的第二信息。
7.如權(quán)利要求6所述的方法,其特征在于,確定所述表征包括確定以下各項中的至少一個:新代碼片段或函數(shù)、復(fù)制的代碼片段或函數(shù)、移動了的函數(shù)、重命名了的函數(shù)、修改了的函數(shù)、刪除了的代碼片段或函數(shù)或既移動又重命名了的函數(shù)。
8.如權(quán)利要求6所述的方法,其特征在于,確定所述表征包括確定移動了的函數(shù),并且其中確定所述表征包括確定第一函數(shù)被從源代碼的所述至少兩個版本中的第一版本中刪除,并且確定所述函數(shù)被添加到所述源代碼的所述至少兩個版本中的第二版本。
9.如權(quán)利要求6所述的方法,其特征在于,還包括生成所述表征的可視化。
10.如權(quán)利要求9所述的方法,其特征在于,生成所述可視化包括生成用一種或多種顏色來顏色編碼的源代碼的所述至少兩個版本的一部分,其中所述一種或多種顏色與一個或多個表征相關(guān)聯(lián)。
11.如權(quán)利要求9所述的方法,其特征在于,生成所述可視化包括生成圖,所述圖包括表示一個或多個不同表征的一個或多個分量。
12.一種利用代碼克隆檢測技術(shù)的智能代碼差分系統(tǒng),包括:
克隆檢測組件,被配置成生成指示對在源代碼的至少兩個版本之間的內(nèi)容改變的類型的確定的信息;以及
重要性引擎,被配置成確定與所述源代碼的所述至少兩個版本之間的所述內(nèi)容改變的所述類型相關(guān)聯(lián)的重要性級別,并且輸出指示所述重要性級別的信息。
13.如權(quán)利要求12所述的系統(tǒng),其特征在于,所述重要性級別至少基于所述源代碼的所述至少兩個版本之間的所述內(nèi)容改變的所述類型是格式改變、詞匯級改變還是邏輯改變。
14.如權(quán)利要求13所述的系統(tǒng),其特征在于,格式改變對應(yīng)于第一重要性級別,詞匯改變對應(yīng)于第二重要性級別,而邏輯改變對應(yīng)于第三重要性級別,其中所述第三重要性級別大于所述第二重要性級別,而所述第二重要性級別大于所述第一重要性級別。
15.如權(quán)利要求12所述的系統(tǒng),其特征在于,還包括表征引擎,所述表征引擎被配置成確定源代碼的所述至少兩個版本之間的內(nèi)容改變的類型的表征,其中所述表征包括語義信息。
16.如權(quán)利要求15所述的系統(tǒng),其特征在于,所述重要性引擎被進一步配置成至少基于所述表征來確定所述重要性級別。
17.如權(quán)利要求16所述的系統(tǒng),其特征在于,所述重要性引擎被進一步配置成向所述表征分配值。
18.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述值是百分比。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于微軟技術(shù)許可有限責(zé)任公司,未經(jīng)微軟技術(shù)許可有限責(zé)任公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201080070705.0/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





