我需要以非递归方式获取 SVN 数据库中特定目录的日志。
svn.exe log HTTP://10.0.3.2:8080/svn/New/Projects --depth 'empty'
表明,
svn: E205000: ''empty'' is not a valid depth; try 'empty', 'files', 'immediates', or 'infinity'
提前致谢,
我需要以非递归方式获取 SVN 数据库中特定目录的日志。
svn.exe log HTTP://10.0.3.2:8080/svn/New/Projects --depth 'empty'
表明,
svn: E205000: ''empty'' is not a valid depth; try 'empty', 'files', 'immediates', or 'infinity'
提前致谢,
我无法想象,为什么你想要这个奇怪的命令,但是
''empty'' is not a valid depth
告诉我,你的客户端操作系统是 Windows,在这种情况下你必须写“空”
并且--depth 没有--diff 不起作用,因此您的最终命令必须是
svn.exe log HTTP://10.0.3.2:8080/svn/New/Projects --depth "empty" --diff
(/New/Projects
仅记录,没有孩子,日志中没有文件列表,但如果发生了 property-changes )
PS:对于 --depth "empty" 我无法检测到忽略孩子的预期有用效果:
svn log URL/branches/ --depth "empty" --diff
显示所有分支中发生的所有修订
我遇到了同样的问题......我怀疑问题可能是由于客户端和服务器之间的互操作性造成的。
我的客户端版本:
$ svn --version
svn, version 1.7.9 (r1462340)
compiled Apr 14 2013, 10:11:47
我的服务器:
Subversion 1.6.2 (r37639)
看起来 --depth 选项在客户端的 1.6.x 版本中不可用
1.7.9 客户端:
$ svn log --help | grep depth
The --depth option is only valid in combination with the --diff option
and limits the scope of the displayed diff to the specified depth.
--depth ARG : limit operation by depth ARG ('empty', 'files',
$
1.6.x 客户端:
$ svn log --help | grep depth
Previous exit value was: 1
$
尝试在关键字周围不加引号empty
并带有=
符号。
svn.exe log http://10.0.3.2:8080/svn/New/Projects --depth=empty
您需要其他工具,例如。grep过滤掉与你无关的日志行
svn log http://10.0.3.2:8080/svn/New/Projects --depth empty --diff | grep +++ -B 7 -A 6
这显示了属性更改之前的 7 行和之后的 6 行。