2

我正在尝试检查我在远程服务器上设置的 Subversion 项目。它适用于大多数目录,但是一旦需要检查一个名为“The%20Loft.pdf”的文件,整个过程就会中断。看起来它无法为其创建“/.svn/tmp/text-base/”文件。我的猜测是 %20 字符有问题。

错误实际上是:svn:无法打开文件'src-holdings/httpdocs/wp-content/blogs.dir/2/files/2010/05/.svn/tmp/text-base/Amanda-Kuda.jpg。 svn-base':没有这样的文件或目录

其中“Amanda-Kuda.jpg”是“The%20Loft.pdf”之后的文件。在查看“/.svn/tmp/text-base/”内部后,看起来所有 .svn-base 文件都在创建,除了那些在结帐顺序中遵循“The%20Loft.pdf”的文件。

如何重新配置​​我的服务器 (Linux) 或 Subversion 以处理这种类型的文件而不破坏?我只会强制执行“无空格”策略,但这是客户的 WordPress 安装,我不能指望他们避免使用空格的文件。

4

1 回答 1

2

我的 windows 框上的以下会话表明 subversion 对包含空格或“%20”的文件名没有问题:

D:\svn>svnadmin create testrepo  

D:\svn>mkdir files

D:\svn>echo content > "files\foo bar"

D:\svn>echo content > "files\foo%20bar"

D:\svn>svn import files file:///d:/svn/testrepo -m "imported files"
Adding         files\foo%20bar
Adding         files\foo bar

Committed revision 1.

D:\svn>svn co file:///d:/svn/testrepo/ checkoutfolder
A    checkoutfolder\foo%20bar
A    checkoutfolder\foo bar
Checked out revision 1.

编辑:从这个线程判断相同的错误消息,您的存储库中有两个文件具有相同的名称,只是大小写不同。这会导致问题,因为您的本地文件系统不支持此功能。

要验证这一点,您可以使用该svn ls命令检查存储库中的文件名,或者在 linux 上进行检查。要解决此问题,您可以使用svn mv命令重命名有问题的文件之一或svn rm删除一个。

于 2011-01-19T19:13:09.467 回答