PowerShell、SVN 和星号

PowerShell, SVN and asterisks

我正在尝试在文件上添加 属性,基本上是将 svn:needs-lock 设置为 *。然而,PowerShell 或 SVN 似乎误解了星号,尤其是当工作副本中有其他文件时(在我的例子中,它们是未版本控制的文件)。

基本上,以下所有变体都会给我错误:svn: E155010: The node: 'R:\SVN\repo\web\root\x' was not found.,其中 x 是工作副本中的一个未版本控制的文件(出于疑问 web.config 版本)。

svn propset svn:needs-lock * web.config
svn propset svn:needs-lock '*' web.config
svn propset svn:needs-lock "*" web.config
svn propset svn:needs-lock `* web.config
svn propset svn:needs-lock "`*" web.config
svn propset svn:needs-lock `"*`" web.config

所以我尝试引用星号、转义星号(PowerShell 使用反引号作为转义字符)和转义引号(以防它们被 PowerShell 解释而不传递给 SVN)。

现在我知道 svn:needs-lock 的实际值并不重要,所以我用别的东西代替,但本着探究的精神,好奇的人想知道。

尝试将参数包装在数组中:

& 'svn.exe' @('propset', 'svn:needs-lock', '*', 'web.config')