Pour un référentiel SVN donné, je dois déterminer une liste de tous les utilisateurs qui ont jamais commis quoi que ce soit dans ce référentiel. Ce référentiel n'est pas le seul sur le serveur SVN, mais la liste doit être limitée à ce référentiel.
user-accounts
svn
repository
user12889
la source
la source
svn log
les utilisateurs qui ont validé les modifications? Ou est-ce que le repo n'est pas une option?Réponses:
Pendant que je commençais à réécrire mon analyse python, j'ai réalisé une bien meilleure façon de faire ce que vous demandiez (j'ai analysé les noms et les dates de soumission pour calculer les ratios de soumission week-end / jour de semaine pour voir qui n'avait pas de vie!)
Consultez le dépôt, puis allez-y et exécutez:
svn log | grep '^r[0-9]' | awk '{print $3}' | sort | uniq
Cela obtient une liste de toutes les modifications qui ont été validées, recherche les lignes qui commencent par la révision et number (
r[12341] | author | date-and-stuff...
), imprime le troisième champ (author), trie les auteurs et supprime les doublons.la source
(no author)
) en ajoutant-F ' [|] '
à awk saisir le nom entier:svn log | grep '^r[0-9]' | awk -F ' [|] ' '{print $2}' | sort | uniq
.Forme légère de la réponse @DrummerB pour les noms d'utilisateur avec des espaces, combinée à la simplicité de @ vgm64
svn log -q | gawk -F "|" '/^r[0-9]/ { print $2 }' | sort -u
la source
La réponse de vgm64 est bonne, mais elle ne fonctionne pas bien avec les noms qui contiennent des espaces. Je l'ai changé, donc ça fait:
la source
Je sais que ce fil est ancien mais comme certains tutoriels pour convertir SVN en Git y sont liés, j'ajoute une commande qui générera un fichier Authors.txt:
S'il s'agit d'un SVN importé ou si vous tombez sur l'
Not a working copy
erreur, vous pouvez spécifier le chemin local vers le dossier SVN en ajoutantfile:///tmp/svn-repo
aprèssvn log -q
la source