2009-08-31 78 views
6

我希望能夠看到某人爲我們的應用程序貢獻的全部代碼行。假設該應用程序是10k行代碼,我希望看到每個開發人員已向存儲庫提交了多少LOC。 SubVersion有什麼可以獲得這種信息嗎?如何確定開發者對SubVersion的總貢獻?

+0

只是出於好奇...你爲什麼要計算代碼行數? – 2009-08-31 16:48:53

+0

我只是對某些開發人員對該項目的貢獻感到好奇。 – swilliams 2009-08-31 16:51:45

+0

好的。請記住LOC是非常一般的。你可以讓一位更有經驗的開發人員將15行到5行的東西壓縮......只需記住一些事情。 – 2009-08-31 16:55:12

回答

5

還有MPY SVN STATSStatSVN如果我沒有記錯,應該做你想做的和更多。

我不認爲用tortoisesvn可以完成所有我知道的命令行工具,我害怕其中的一些linux工具。

+1

只要我可以通過cygwin運行命令行工具,它不會是一個問題。我會在StatsSVN上再看一眼。 – swilliams 2009-08-31 16:56:00

+0

看起來像StatSVN(只有2秒)做了我所需要的。謝謝! – swilliams 2009-08-31 17:17:36

2

svn blame可以通過將提交者的姓名預先添加到每行源代碼中來幫助您入門。

他們的榜樣輸出被

 
$ svn blame http://svn.red-bean.com/repos/test/readme.txt 
    3  sally This is a README file. 
    5  harry You should read this. 

所以你可以做這樣的事情

cat ./*blamed | awk '{print $2}' | sort | uniq -c 

上的文件形成像

 
$ cat b.txt 
3 Mark asdf 
3 Mark asdf 
3 Bill fdas 
4 Bill fdas 
5 Fred fdfd 

得到像

$ cat b.txt | awk '{print $2}' | sort | uniq -c 
     2 Bill 
     1 Fred 
     2 Mark 
輸出

...但可能有比這更乾淨的方法。

+0

雖然這隻適用於單個文件嗎?我想要一個整個項目的東西。 – swilliams 2009-08-31 16:55:18

+0

該頁面顯示'svn blame'適用於「指定文件」,所以我認爲你可以指定儘可能多的文件。我在這裏沒有svn,所以我無法測試它。 – 2009-08-31 16:58:15