2009-08-31 18 views
6

Mi piacerebbe essere in grado di vedere le linee di codice totali di qualcuno fornite alla nostra applicazione. Supponiamo che l'app sia composta da 10.000 righe di codice, mi piacerebbe vedere la ripartizione di quanti LOC ogni sviluppatore ha commesso nel repository. C'è qualcosa per SubVersion per ottenere questo tipo di informazioni?Come determinare il contributo totale di uno sviluppatore a SubVersion?

+0

Solo per curiosità ... perché vuoi contare le righe di codice? –

+0

Sono solo curioso di conoscere il contributo di alcuni sviluppatori al progetto. – swilliams

+0

Ok. Tieni presente che LOC è molto generale. Potresti avere uno sviluppatore più esperto che comprima qualcosa da 15 righe fino a 5 ... solo qualcosa da tenere a mente. –

risposta

5

C'è MPY SVN STATS e anche StatSVN se ricordo bene che dovrebbe fare quello che vuoi e molto altro.

Non penso che si possa fare con tortoisesvn tutti gli strumenti che conosco sono strumenti da riga di comando e temo che alcuni di essi siano strumenti Linux.

+1

Finché posso eseguire gli strumenti della riga di comando tramite cygwin, non sarebbe un problema. Prenderò un'altra occhiata a StatsSVN però. – swilliams

+0

Sembra che StatSVN (solo 2 s) abbia fatto ciò di cui avevo bisogno. Grazie! – swilliams

2

svn blame può iniziare, anteponendo il nome del committente a ciascuna riga del codice sorgente.

La loro produzione esempio è stato

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

Così si potrebbe fare qualcosa di simile

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

su un file formato come

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

per ottenere output come

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

... ma probabilmente c'è un modo più semplice per farlo.

+0

Tuttavia, è solo per un singolo file? Mi piacerebbe qualcosa per un intero progetto. – swilliams

+0

La pagina dice "svn blame" funziona per "i file specificati", quindi presumo che tu possa specificare tutti i file che desideri. Non ho svn qui, quindi non posso provarlo. –

Problemi correlati