Para um determinado repositório SVN, preciso determinar uma lista de todos os usuários que já confirmaram algo nesse repositório. Este repositório não é o único no servidor SVN, mas a lista deve ser restrita a esse repositório.
user-accounts
svn
repository
user12889
fonte
fonte
svn log
os usuários que confirmaram alterações? Ou verificar o repo não é uma opção?Respostas:
Enquanto eu comecei a reescrever minha análise python, percebi uma maneira muito melhor de fazer o que você pediu (analisei nomes e datas de envio para calcular as taxas de envio de fim de semana / dia da semana para ver quem não tinha vida!)
Confira o repositório, vá para ele e execute:
svn log | grep '^r[0-9]' | awk '{print $3}' | sort | uniq
Ele obtém uma lista de todas as alterações que foram confirmadas, recebe as linhas que começam com a revisão e o número (
r[12341] | author | date-and-stuff...
), imprime o terceiro campo (autor), classifica os autores e se livra das duplicatas.fonte
(no author)
) adicionando-F ' [|] '
a awk vai pegar o nome completo:svn log | grep '^r[0-9]' | awk -F ' [|] ' '{print $2}' | sort | uniq
.Forma clara da resposta @DrummerB para nomes de usuário com espaços, combinada com a simplicidade da @ vgm64
svn log -q | gawk -F "|" '/^r[0-9]/ { print $2 }' | sort -u
fonte
A resposta do vgm64 é boa, mas não funciona bem com nomes que contêm espaços. Eu mudei, assim acontece:
fonte
Eu sei que esse segmento é antigo, mas como alguns tutoriais para converter SVN para Git estão vinculando lá, adiciono um comando que irá gerar um arquivo Authors.txt:
Se este for um SVN importado ou se você encontrar o
Not a working copy
erro, poderá especificar o caminho local para a pasta SVN adicionandofile:///tmp/svn-repo
apóssvn log -q
fonte