提交到 SVN 存储库的所有用户的列表

提交到 SVN 存储库的所有用户的列表

对于给定的 SVN 存储库,我需要确定曾经向该存储库提交过任何内容的所有用户的列表。此存储库不是 SVN 服务器上的唯一存储库,但列表应仅限于该存储库。

答案1

当我开始重写我的 python 解析时,我意识到一种更好的方法来完成你所要求的事情(我解析了姓名和提交日期来计算周末/工作日的提交比率,看看谁没有生活!)

检查 repo,然后转到它并执行:

svn log | grep '^r[0-9]' | awk '{print $3}' | sort | uniq

这将获取已提交的所有更改的列表,查找以修订和编号 () 开头的行r[12341] | author | date-and-stuff...,打印出第三个字段(作者),对作者进行排序并删除重复项。

答案2

@DrummerB 回答的精简形式适用于带空格的用户名,并结合了 @vgm64 的简洁性

svn log -q | gawk -F "|" '/^r[0-9]/ { print $2 }' | sort -u

答案3

vgm64 的答案很好,但它对包含空格的名称不太适用。我修改了它,所以它确实如此:

svn log | grep '^r\do*' | sed 's_^r[0-9]* | \([^|]*\) | .*$_\1_g' | sort | uniq

答案4

Win Powershell 版本的@Albirew 的答案:

svn log -q | Select-String "^r" | ForEach-Object {
    $parts = $_ -split '\|'
    $author = $parts[1].Trim()
    "$author = $author <$author>"
} | Sort-Object -Unique > Authors.txt

相关内容