我正在尝试查看我在远程服务器上设置的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安装,我不能指望它们以避免带空格的文件。
答案 0 :(得分:1)
我的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.
编辑:从this thread判断同一错误消息,您的存储库中有两个文件名相同,只是大小写不同。这会导致问题,因为您的本地文件系统不支持此问题。
要验证这一点,您可以使用svn ls
命令检查存储库中的文件名,或在linux上执行检出。要解决此问题,请使用svn mv
命令重命名其中一个违规文件,或使用svn rm
删除一个。{/ p>