Dla danego repozytorium SVN muszę określić listę wszystkich użytkowników, którzy kiedykolwiek cokolwiek powierzyli temu repozytorium. To repozytorium nie jest jedynym na serwerze SVN, ale lista powinna być ograniczona do tego repozytorium.
user-accounts
svn
repository
user12889
źródło
źródło
svn log
dla użytkowników, którzy dokonali zmian? Czy sprawdzanie repo nie jest opcją?Odpowiedzi:
Kiedy zacząłem przepisywać moje parsowanie pythona, zdałem sobie sprawę, że jest o wiele lepszy sposób na zrobienie tego, o co prosiłeś (przeanalizowałem nazwy i daty przesłania, aby obliczyć współczynniki składania weekendów / dni tygodnia, aby zobaczyć, kto nie ma życia!)
Sprawdź repo, a następnie przejdź do niego i wykonaj:
svn log | grep '^r[0-9]' | awk '{print $3}' | sort | uniq
Dostaje listę wszystkich zatwierdzonych zmian, greps dla linii rozpoczynających się od wersji i numeru (
r[12341] | author | date-and-stuff...
), drukuje trzecie pole (autor), sortuje autorów i pozbywa się duplikatów.źródło
(no author)
) dodawanie-F ' [|] '
awk chwyta całą nazwę:svn log | grep '^r[0-9]' | awk -F ' [|] ' '{print $2}' | sort | uniq
.Odpowiedź vgm64 jest dobra, ale nie działa dobrze w przypadku nazw zawierających spacje. Zmieniłem to, więc to robi:
źródło
Lekka forma odpowiedzi @DrummerB dla nazw użytkowników ze spacjami w połączeniu z prostotą @ vgm64
svn log -q | gawk -F "|" '/^r[0-9]/ { print $2 }' | sort -u
źródło