我大部分時間都在做基本的一些家務管理變更,我們其中一個項目的代碼庫(用log4j代替所有的System.out.println()
調用)。如何查找CVS版本之間更改的行數?
我很好奇我用這組更改更新了多少行代碼。
反正有cvs diff
或另一個命令得到一個準確的計數有多少行已經改變?
我已經試過
cvs diff -b -B -R
讓所有的工作目錄的變化(和遞歸子目錄),但對於每一個文件改變了它還會打印出的文件/版本信息,這使得剛剛計數輸出線無用。
任何想法?
我大部分時間都在做基本的一些家務管理變更,我們其中一個項目的代碼庫(用log4j代替所有的System.out.println()
調用)。如何查找CVS版本之間更改的行數?
我很好奇我用這組更改更新了多少行代碼。
反正有cvs diff
或另一個命令得到一個準確的計數有多少行已經改變?
我已經試過
cvs diff -b -B -R
讓所有的工作目錄的變化(和遞歸子目錄),但對於每一個文件改變了它還會打印出的文件/版本信息,這使得剛剛計數輸出線無用。
任何想法?
的濾除diff的輸出多餘的線條和再算上線。
例如,僅grep的開始的行<或>
cvs diff -b -B -R | egrep '^<|>' | wc -l
你可以簡單地輸出CVS diff到diffstat。
這很好,雖然它似乎對「jsp/blah.jsp」和「blah.jsp」等文件進行了重複計數。之前不知道diffstat,謝謝! – 2008-10-22 20:01:56
怎麼樣確認你已經改變了所有情況下的東西,如:
find . | egrep -v -e '(CVS|<other patterns you don't want>)' | \
xargs egrep -e 'System\.out\.println[(][)]' | wc -l
,應該給你零。
然後用'log4j'替換第二個egrep中的正則表達式應該使用wc -l返回已更改的行數。
HTH。
歡呼聲,
羅布
的diffstat實用程序是用於從CVS,SVN或其他差別的輸出得到一些簡單的指標一個很好的工具。
這是我最終使用的,畢竟在你發佈之前的幾秒鐘 - 謝謝 – 2008-10-22 20:02:30
使用這個修改後的行會計算兩次對嗎? – 2010-03-08 16:35:33