SVN存储库Dictated配置:模式覆盖不按预期工作

问题描述 投票:1回答:1

我有一个SVN配置文件,我不能改变。此配置文件定义了一些自动属性分配规则。以下是配置文件的相关部分:

enable-auto-props = yes
[auto-props]
*.xlsm = svn:needs-lock=*

对于一个特定的存储库,我不希望将属性svn:needs-lock分配给*.xlsm文件。为此,我想使用“存储库Dictated配置”。我将值为svn:auto-props的属性*.xlsm = svn:mime-type=application/vnd.ms-excel分配给存储库根目录。

根据this的信息,来自属性*.xlsm的模式svn:auto-props会覆盖配置文件中的模式,只要我将文件添加到相应的存储库根目录及其子节点。

例:

/               Repository root with the "svn:auto-props" property
                assigned, as described above.
/file.xlsm      The file I want to add to the repo.

添加文件file.xlsm时,我希望该文件的属性

svn:mime-type    application/vnd.ms-excel

因为来自存储库根目录的svn:auto-props会覆盖我的配置文件中的模式。但是,规则似乎已合并,file.xlsm的结果属性为:

svn:mime-type    application/vnd.ms-excel
svn:needs-lock   *

我对覆盖的理解是将一个规则替换为另一个规则,而不是同时应用这两个规则。我怎样才能达到预期的效果?

我正在运行Windows 10和SVN 1.9.5:

$ svn --version
svn, version 1.9.5 (r1770682)
   compiled Nov 26 2016, 14:22:31 on x86-microsoft-windows

Copyright (C) 2016 The Apache Software Foundation.

更新:我现在安装了最新版本的SVN,但没有解决问题。

$ svn --version
svn, version 1.11.1 (r1850623)
   compiled Jan  9 2019, 19:28:50 on x86-microsoft-windows

Copyright (C) 2019 The Apache Software Foundation.
svn
1个回答
1
投票

在这种情况下,我理解了错误覆盖的行为。

不会覆盖模式,但会覆盖属性。这意味着如果我定义属性两次,则覆盖应用为属性值定义,而不是整个模式。

不幸的是,到目前为止,压倒一切都被打破了。见https://issues.apache.org/jira/browse/SVN-4699

此外,如果设置一次,则无法覆盖svn:needs-locksvn:needs-lock没有价值,该物业代表自己。我只能通过定义一个新值来覆盖一个属性(我仍然可以为该属性赋值,但这不会改变行为)。

这意味着我的情况:我已经在我的SVN配置文件中定义了svn:needs-locksvn:needs-lock现已启用。我无法覆盖此属性,使其被删除。

我的问题没有解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.