Per un determinato repository SVN ho bisogno di determinare un elenco di tutti gli utenti che abbiano mai eseguito operazioni su quel repository. Questo repository non è l'unico sul server SVN, ma l'elenco dovrebbe essere limitato a quel repository.
Per un determinato repository SVN ho bisogno di determinare un elenco di tutti gli utenti che abbiano mai eseguito operazioni su quel repository. Questo repository non è l'unico sul server SVN, ma l'elenco dovrebbe essere limitato a quel repository.
Risposte:
Mentre ho iniziato a riscrivere il mio analisi Python, ho realizzato un modo molto migliore per fare ciò che mi hai chiesto (ho analizzato i nomi e le date di invio per calcolare i rapporti di invio di fine settimana / giorni feriali per vedere chi non aveva vita!)
Dai un'occhiata al repository, quindi vai ad esso ed esegui:
svn log | grep '^r[0-9]' | awk '{print $3}' | sort | uniq
Viene visualizzato un elenco di tutte le modifiche apportate, greps per le righe che iniziano con la revisione e il numero ( r[12341] | author | date-and-stuff...
), stampa il terzo campo (autore), ordina gli autori e elimina i duplicati.
(no author)
) l'aggiunta -F ' [|] '
di awk catturerà l'intero nome: svn log | grep '^r[0-9]' | awk -F ' [|] ' '{print $2}' | sort | uniq
.
Forma leggera di risposta @DrummerB per nomi utente con spazi, unita alla semplicità di @ vgm64
svn log -q | gawk -F "|" '/^r[0-9]/ { print $2 }' | sort -u
So che questo thread è vecchio ma poiché alcuni tutorial per convertire SVN in Git si collegano lì, aggiungo un comando che genererà un file Authors.txt:
svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > Authors.txt
Se si tratta di un file SVN importato o se si riscontra un Not a working copy
errore, è possibile specificare il percorso locale della cartella SVN aggiungendo file:///tmp/svn-repo
doposvn log -q
svn log
gli utenti che hanno apportato modifiche? O il check-out del repository non è un'opzione?