特定用户的SVN活动日志?

特定用户的SVN活动日志?,svn,Svn,是否可以跨所有存储库查询与特定用户相关的所有活动。包括退房吗?谢谢。我不认为svn内置了对该功能的支持,但您可以编写一个小脚本来运行 svn log --xml 在您想要测试的任何repo的目录中,解析它并只选择给定用户所做的条目。I秒,但有一个补充:如果您在Windows上,TortoiseSVN允许您过滤输出,包括按用户名过滤的功能 这里有一个小技巧,它使用GNU的sed对svn命令的日志输出执行正则表达式。将用户名更改为所需的用户名 svn log | sed -n '/| userna

是否可以跨所有存储库查询与特定用户相关的所有活动。包括退房吗?谢谢。

我不认为svn内置了对该功能的支持,但您可以编写一个小脚本来运行

svn log --xml

在您想要测试的任何repo的目录中,解析它并只选择给定用户所做的条目。

I秒,但有一个补充:如果您在Windows上,TortoiseSVN允许您过滤输出,包括按用户名过滤的功能

这里有一个小技巧,它使用GNU的sed对svn命令的日志输出执行正则表达式。将用户名更改为所需的用户名

svn log | sed -n '/| username |/,/-----$/ p'
要从webdav配置中获取文件夹列表(撰写本文时我在Ubuntu上),请尝试以下操作

grep SVNPath /etc/apache2/mods-available/dav_svn.conf | grep -v \# | sed 's/^\s*SVNPath //'

这只是对行进行一次greps,两次删除注释行并过滤SVNPath关键字和相关的空白字符。您的结果是repo文件夹,因此,如果要使用svn命令,请在通过谷歌搜索到达这里的人前面加上file://

,并使用svn log命令的
--Search
参数

Q:\Projects>svn log --search username
------------------------------------------------------------------------
r2874 | username | 2019-03-15 07:37:59 +0000 (Fri, 15 Mar 2019) | 1 line

Test Software
------------------------------------------------------------------------
r2873 | username | 2019-03-15 07:36:15 +0000 (Fri, 15 Mar 2019) | 1 line

Latest Document
------------------------------------------------------------------------
我还喜欢使用
-v
参数查看更改的详细信息


查看
svn帮助日志
了解更多信息

在服务器上的repo目录中的何处执行此操作?例如,包含conf、dav、db、format、hook、locks的目录。如果它说svn:“.”不是一个有效的copyNo,那么您需要在客户机上执行它。svn公司;cd东西;svn log--xml那么如果另一个用户签出它,它将不会显示?基本上,我想知道是谁签出了某个回购协议。@Louis:没有办法知道是谁签出了存储库。每个有权访问它的人都可以随时查看它。您所能看到的只是在存储库中签入的更改。如果您通过Apache运行它,您可以解析日志并查看哪些用户名访问了它-这就像检查谁签出了它。svn:无效选项:--search@DannySchoemann您正在使用哪个版本的svn?对于me
svn——版本
报告了svn,版本1.14.0(r1876290),从2020年5月开始。您可能需要更新您的客户端。