Subversion是否单独锁定路径?可以在分组模式下完成吗?

时间:2014-09-16 23:20:43

标签: bash svn

使用lock command时:

svn lock TARGET...

您可以指定要锁定的多个目标路径。当这些被锁定时,Subversion是否会为每个目标重复该过程?我怀疑它确实如此,因为pre-lock hook script传递了5个参数,其中一个是(单个)目标路径。后锁钩不同,通过stdin传递所有路径。

这限制了预挂钩脚本可以做什么;如果是这种情况,是否有办法在处理锁之前访问所有目标路径?

对于上下文:我试图在给出锁定之前在所有路径上运行命令。此命令将返回用户可见的错误。当我在2个或更多路径上请求锁定时,错误被正确返回,但仅针对第一个路径。

1 个答案:

答案 0 :(得分:0)

预锁定钩子脚本将检查需要锁定的所有路径。变量$ PATH将具有此值。如果您尝试锁定多个文件(例如3),变量$PATH将遍历所有三个文件,并且其值将在运行时更改三次。

只需在预锁中添加以下行即可清楚地看到这一点。

echo $PATH >>/tmp/path.txt

锁定文件后,path.txt将包含您锁定的所有三个路径。

但是,下面的命令只显示一个路径,因为变量$ PATH一次只包含1个值。

echo $PATH >/tmp/path.txt

如果您可以根据您使用的确切要求和脚本进行更新,则可以提供更好的帮助。

相关问题