如何确定何时创建svn:external

如何确定何时创建svn:external,svn,external,Svn,External,比如说,我在svn中有一个带有svn:external设置的目录: $ svn propget svn:externals <url>/project_a/trunk/A <url>/project_b/B B $ svn info ^/trunk/A (...) Revision: 133416 (...) $ svn info ^/trunk/A/B svn: warning: W170000: URL '...' non-existent in revision

比如说,我在svn中有一个带有svn:external设置的目录:

$ svn propget svn:externals <url>/project_a/trunk/A
<url>/project_b/B B

$ svn info ^/trunk/A
(...)
Revision: 133416
(...)

$ svn info ^/trunk/A/B
svn: warning: W170000: URL '...' non-existent in revision 133416

svn: E200009: Could not display info for all targets because some targets don't exist

$ svn log --verbose <url>/project_a/trunk/A
(no mention of directory B at all)
$svn propget svn:externals/project\u a/trunk/a
/项目b/b
$svn信息^/trunk/A
(...)
修订:133416
(...)
$svn信息^/trunk/A/B
svn:警告:W170000:URL“…”在修订版133416中不存在
svn:E200009:无法显示所有目标的信息,因为某些目标不存在
$svn日志--详细/项目\ a/trunk/a
(根本没有提到目录B)

如何找出谁以及何时创建了此外部文件?

运行
svn log--verbose--diff--depth=empty/project\u a/trunk/a
。该命令将仅显示对
/project\u a/trunk/a

所做的属性更改。如果我理解正确,您正在查找目录的第一个修订版

svn log -r 1:HEAD --limit 1 ^/trunk/A/B 

你提供的信息我不清楚,但我只是想问,你说
(根本没有提到目录B)
/project\u a/trunk/a
下是否确实存在
/B
?@JaiminAjmeri是的。签出期间创建目录
A/B
。我无法确定谁或何时有人创建了此svn external。我仍在等待此命令结束,但我可以向您保证-它列出的不仅仅是svn属性:((编辑)--depth在svn 1.6上也不可用,但幸运的是它存在于svn 1.8中。好的,它终于结束了。日志列出了对作为url传递的目录的所有更改,但是
--depth=empty
使
--diff
参数仅对属性有效。我仍然需要使用grep或其他工具筛选历史记录,以找到引入属性更改的人。(在我的例子中,开发人员没有添加提交消息)。您是否愿意编辑您的答案以更好地解释
--depth=empty--diff
应该做什么?以及用户应该在输出中查找什么?