diffcount代碼行差異統計工具,主要用于比較兩個代碼包的新增,修改,刪除的代碼量。不過統計出來的結果和自己統計的有些差異,可以統計的文件類型有些少,而且偏后端語言。另外,在windows下使用的時候,直接敲命令行即可。
功能說明
1、差異統計:統計某一個版本的代碼包相對于一個原始的基線代碼包,變動的代碼量,以及變動的代碼量中各語言非空非注釋行(NBNC)的結果;
2、代碼統計:如果需要,可以把diffcount當作普通的代碼行統計工具,統計一個代碼包;
diffcount命令行方式的編譯是直接通過Makefile進行的,目前提供Linux,Cygwin,Windows(MinGW)三種環境下的編譯腳本,其他環境中,如果需要編譯和使用,請通過修改Makefile文件進行。
diffcount參數說明
使用方法: diffcount [OPTION]... (Baseline) Target
功能:對兩個代碼包進行差異統計、或者對一個代碼包進行代碼行統計
packages 是差異統計的兩個對象,也可以是僅作統計的一個對象
參數說明:
-c --count-only FILE/DIR
僅僅對一個文件或者目錄完成統計代碼行的功能,沒有比較對象。這樣Packages參數的數量只能有一個(文件或目錄)
--ignore-case (DIFF USE ONLY)
在比較的時候,忽略文件名的大小寫差異(缺省情況會作為兩個完全不同的文件),僅在“差異統計”時有效
注意:一些產品的代碼,存在不同的版本的目錄和文件的大小寫不一樣的情況,可能是copy或者傳送過程中造成的,對于這種情況,請使用該開關。
--print-lines-info (DEBUG USE OLY)
輸出每個文件差異比較后的差異結果和初步統計信息(逐行),主要用于分析錯誤。
注意:不要針對大型代碼包使用,否則逐行打印時間消耗驚人。
--print-files-info
使用這個開關,當每個文件差異比較和統計以后,輸出該文件差異統計的結果信息。
缺省不打印每個文件的信息,只打印最后的結果。
注意:上邊兩個開關都需要打印控制臺,如果文件較多的話,打印的時間會很長,因此除非有具體分析需要,否則盡量不要打開。
--force-parse-all (DIFF USE ONLY)
強制對所有文件進行分析處理(即使它們是完全相同的),缺省對完全相同的文件略過。
僅在“差異統計”時有效,代碼行統計(count-only)時所有文件都要處理。
--for-program-reading
改變輸出方式,以格式化文本形式輸出,便于其他程序讀取結果信息
在由第三方程序調用diffcount,并需要讀取統計結果的時候使用
該選項會屏蔽 --print-lines-info 選項
-v --version
輸出當前的版本信息
--help
輸出幫助信息
備注:
在進行差異統計的時候,統計的對象是代碼包(目錄),其中第一個目錄是代碼的基線,第二個目錄是被統計的對象,所以新增、修改、刪除,都是站在第二個目錄,被統計對象的角度來說的。
- PC官方版
- 安卓官方手機版
- IOS官方手機版