国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種軟件源代碼差異文件提取方法與流程

      文檔序號:12664544閱讀:1097來源:國知局
      一種軟件源代碼差異文件提取方法與流程

      本發(fā)明涉及軟件技術(shù)領(lǐng)域,尤其涉及一種軟件源代碼差異文件提取方法。



      背景技術(shù):

      目前的軟件越來越大,結(jié)構(gòu)越來越復(fù)雜,開發(fā)工作量越來越大,因此,在大型軟件開發(fā)中通常采用團(tuán)隊(duì)協(xié)作開發(fā)的模式,并通過版本服務(wù)器(例如SVN)來對版本進(jìn)行控制,以便進(jìn)行管理。

      當(dāng)從SVN服務(wù)器遠(yuǎn)程目錄同步一份目標(biāo)工作目錄到本地進(jìn)行修改,修改完成后,在上傳更新到SVN服務(wù)器之前需要經(jīng)過管理員的審核比較。當(dāng)目標(biāo)工作目錄內(nèi)容很大(例如幾個(gè)GB)且其中有很多層子目錄時(shí),如果將整個(gè)目標(biāo)工作目錄拷貝傳給管理員將很耗時(shí)并且不方便,如果只將幾個(gè)修改了的文件發(fā)給管理員雖然會快捷很多,但必須將每個(gè)文件的目錄結(jié)構(gòu)路徑同時(shí)告訴管理員,管理員還需要根據(jù)每個(gè)文件的位置與服務(wù)器對應(yīng)位置的文件進(jìn)行比較上傳,同樣也很繁瑣,效率低下。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明提供一種軟件源代碼差異文件提取方法,旨在解決現(xiàn)有技術(shù)中的缺陷,實(shí)現(xiàn)軟件源代碼差異文件的快速提取,提高了源代碼的審核效率。

      為達(dá)到上述目的,本發(fā)明所采取的技術(shù)方案為:

      本發(fā)明提供一種軟件源代碼差異文件提取方法,包括:

      從軟件版本服務(wù)器上同步目標(biāo)工作目錄到本地進(jìn)行修改;

      生成所述目標(biāo)工作目錄的差異文件列表;

      讀取差異文件列表,獲得絕對路徑;

      提取差異文件。

      具體地,所述生成所述目標(biāo)工作目錄的差異文件列表的步驟,包括如下步驟:

      提取所述目標(biāo)工作目錄的差異文件;

      生成差異文件列表。

      具體地,所述提取差異文件使用函數(shù)CopyFile()來實(shí)現(xiàn)。

      具體地,所述提取差異文件使用函數(shù)SHFileOperation()來實(shí)現(xiàn)。

      具體地,所述讀取差異文件列表,獲得絕對路徑的步驟包括:

      按行讀取的方式逐行讀取每項(xiàng)差異文件的相對文件路徑,與源目錄中的路徑組合成得到該差異文件的絕對路徑。

      具體地,所述提取差異文件的步驟,包括如下步驟:

      確定所述差異文件的源文件路徑;

      確定目標(biāo)文件路徑;

      按照所述差異文件的源文件目錄結(jié)構(gòu)提取差異文件到所述目標(biāo)文件路徑下。

      具體地,所述軟件版本服務(wù)器為SVN服務(wù)器。

      本發(fā)明的有益效果在于:本發(fā)明通過生成目標(biāo)工作目錄的差異文件列表,獲得絕對路徑,然后提取差異文件,從而實(shí)現(xiàn)了快速提取軟件源代碼差異文件的技術(shù)效果,大大提高了管理員的審核效率。

      附圖說明

      圖1是本發(fā)明的軟件源代碼差異文件提取方法的流程示意圖;

      圖2是本發(fā)明生成差異文件列表的示意圖;

      圖3是本發(fā)明差異文件的相對文件路徑的示意圖;

      圖4是本發(fā)明提取后的差異文件的示意圖。

      具體實(shí)施方式

      下面結(jié)合附圖具體闡明本發(fā)明的實(shí)施方式,附圖僅供參考和說明使用,不構(gòu)成對本發(fā)明專利保護(hù)范圍的限制。

      如圖1所示,本發(fā)明的實(shí)施例一方面提供一種軟件源代碼差異文件提取方法,包括:

      步驟1、從軟件版本服務(wù)器上同步目標(biāo)工作目錄到本地進(jìn)行修改。

      具體地,所述軟件版本服務(wù)器為SVN服務(wù)器。

      SVN是Subversion的簡稱,是一個(gè)開放源代碼的版本控制系統(tǒng),目前已廣泛應(yīng)用在軟件開發(fā)工程中。

      步驟2、生成所述目標(biāo)工作目錄的差異文件列表。

      具體地,步驟2包括如下步驟:

      步驟201、提取所述目標(biāo)工作目錄的差異文件。

      在具體實(shí)施時(shí),如圖2所示,所述目標(biāo)工作目錄從SVN服務(wù)器上同步到本地修改完成后,通過SVN COMMIT命令提交,SVN會自動(dòng)將修改過的存在差異的文件提取出來。

      步驟202、生成差異文件列表。

      具體地,所述差異文件列表為一包含相對文件路徑信息的列表。

      在具體實(shí)施時(shí),選中目標(biāo)提交文件,在SVN菜單中選擇“復(fù)制路徑信息到剪貼板(Copy paths to clipboard)”命令,將所述目標(biāo)提交文件的相對文件路徑信息提取到差異文件列表DiffFileList.dat中,生成差異文件列表,如圖3所示。

      步驟3、讀取差異文件列表,獲得絕對路徑。

      在所述差異文件列表清單中,每一行都是一個(gè)差異文件的相對文件路徑。通過按行讀取的方式逐行讀取每項(xiàng)差異文件的相對文件路徑,與源目錄中的路徑組合成得到該差異文件的絕對路徑。

      步驟4、提取差異文件。

      提取差異文件是將包含所述絕對路徑的文件提取復(fù)制到對應(yīng)的目標(biāo)路徑中。

      具體地,提取差異文件可以使用函數(shù)CopyFile()來實(shí)現(xiàn)。

      但是,函數(shù)CopyFile在復(fù)制文件時(shí),需要確保路徑存在才能復(fù)制成功,因此需要自己判斷目標(biāo)路徑文件夾是否存在,不存在則需自己逐級創(chuàng)建,使用起來比較麻煩。

      進(jìn)一步地,提取差異文件可以使用函數(shù)SHFileOperation()來實(shí)現(xiàn)。

      函數(shù)SHFileOperation是一種外殼函數(shù),用它可以實(shí)現(xiàn)各種文件操作,如文件的拷貝、刪除、移動(dòng)等。函數(shù)SHFileOperation()只有一個(gè)指向SHFILEOPSTRUCT結(jié)構(gòu)參數(shù),使用時(shí)只要填寫所述結(jié)構(gòu)參數(shù)SHFILEOPSTRUCT告訴系統(tǒng)需執(zhí)行的操作,以及其它重要信息,并且當(dāng)復(fù)制的目標(biāo)文件路徑不存在時(shí),它會自動(dòng)創(chuàng)建相應(yīng)的文件路徑完成拷貝。

      具體而言,包括如下步驟:

      步驟401、確定所述差異文件的源文件路徑。

      步驟402、確定目標(biāo)文件路徑。

      步驟403、按照所述差異文件的源文件目錄結(jié)構(gòu)提取差異文件到所述目標(biāo)文件路徑下。

      如圖4所示,可以看到在目標(biāo)文件路徑下,差異文件已經(jīng)按照差異文件的源文件目錄結(jié)構(gòu)被提取出來了。在將目標(biāo)工作目錄上傳到SVN服務(wù)器之前,將這個(gè)包含所述差異文件的文件夾發(fā)給管理員進(jìn)行審核。由于這個(gè)包含所述差異文件的文件夾是按照差異文件的源文件目錄結(jié)構(gòu)提取的,目錄和文件是一一對應(yīng)的,管理員也只需將這個(gè)這個(gè)包含所述差異文件的文件夾與服務(wù)器的文件夾用比較工具(例如Beyond Compare等)直接對比,審核效率大為提高。

      以上所揭露的僅為本發(fā)明的較佳實(shí)施例,不能以此來限定本發(fā)明的權(quán)利保護(hù)范圍,因此依本發(fā)明申請專利范圍所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1