2009-08-31 7 views
6

Ich möchte in der Lage zu sehen, jemand die gesamte Codezeilen zu unserer Anwendung beigetragen. Sagen wir, die App ist 10k Zeilen Code, ich würde gerne die Aufschlüsselung der Anzahl der LOC sehen, die jeder Entwickler für das Repository festgelegt hat. Gibt es etwas für SubVersion, um diese Art von Informationen zu erhalten?Wie kann man den Gesamtbeitrag eines Entwicklers zu SubVersion ermitteln?

+0

Nur aus Neugier ... warum möchten Sie Codezeilen zählen? –

+0

Ich bin nur neugierig auf bestimmte Entwickler Beitrag zu dem Projekt. – swilliams

+0

Ok. Bedenken Sie, dass LOC sehr allgemein ist. Sie könnten einen erfahreneren Entwickler haben, der etwas von 15 Zeilen auf 5 komprimiert ... nur etwas, das Sie im Auge behalten sollten. –

Antwort

5

Es gibt MPY SVN STATS und auch StatSVN, wenn ich mich richtig erinnere, sollte das tun, was Sie wollen und vieles mehr.

Ich denke nicht, dass es mit tortoissevn alle Tools, die ich weiß, sind Befehlszeilen-Tools und ich fürchte, einige von ihnen Linux-Tools getan werden kann.

+1

Solange ich die Kommandozeilen-Tools über Cygwin ausführen kann, wäre das kein Problem. Ich werde einen anderen Blick auf StatsSVN werfen. – swilliams

+0

Sieht aus wie StatSVN (nur 2 s) hat getan, was ich brauchte. Vielen Dank! – swilliams

2

svn blame können Sie beginnen, indem Sie den Committer-Namen jeder Zeile des Quellcodes voranstellen.

Ihr Beispiel Ausgabe

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

So wurde Sie so etwas wie

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

auf eine Datei gebildet wie

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

zu erhalten eine Ausgabe wie

$ cat b.txt | awk '{print $2}' | sort | uniq -c 
     2 Bill 
     1 Fred 
     2 Mark 
tun könnte

... aber es gibt wahrscheinlich einen saubereren Weg, es zu tun.

+0

Ist das nur für eine einzelne Datei? Ich hätte gerne etwas für ein ganzes Projekt. – swilliams

+0

Die Seite sagt 'svn blame' funktioniert für" die angegebenen Dateien ", also nehme ich an, dass Sie so viele Dateien angeben können, wie Sie möchten. Ich habe keine Svn hier, also kann ich es nicht testen. –

Verwandte Themen