我已经重置了我的树莓派(垃圾太多了)。我想我可以简单地使用我的备份来使SVN再次运行。问题来了:我的备份(每日,完全自动)刚刚将所有文件夹和文件复制到FTP Web服务器。现在我刚把它下载到我的Windows PC上,并通过WinSCP复制到树莓派(首先我用sudo svnadmin创建了文件夹),我已经删除了所有现有的文件和文件夹,并用FTP服务器上的东西替换了它们-应该是一样的吗?之后,我设置了权限,现在它应该可以工作了。但事实并非如此——问题是(当试图用谷歌chrome打开svn时)——有这样的消息:
<D:error xmlns:D="DAV:" xmlns:m="http://apache.org/dav/xmlns" xmlns:C="svn:">
<C:error/>
<m:human-readable errcode="160033">Could not open the requested SVN filesystem</m:human-readable>
</D:error>
apache错误日志也记录了这个问题:
[Sat Dec 05 21:37:28.826821 2015] [:error] [pid 559:tid 3003118640] (20014)Internal error: [client 192.168.188.20:55525] Unknown FS type 'fsfsr'
[Sat Dec 05 21:37:28.831649 2015] [dav:error] [pid 559:tid 3003118640] [client 192.168.188.20:55525] Could not fetch resource information. [500, #0]
[Sat Dec 05 21:37:28.831808 2015] [dav:error] [pid 559:tid 3003118640] [client 192.168.188.20:55525] Could not open the requested SVN filesystem [500, #160033]
[Sat Dec 05 21:37:28.831914 2015] [dav:error] [pid 559:tid 3003118640] [client 192.168.188.20:55525] Could not open the requested SVN filesystem [500, #160033]
你们中有人知道我能做些什么来让我的存储库重新工作吗?
非常感谢,多米尼克
更新(1):我已经修复了一些接缝导致问题的文件。现在,当我尝试转储我的存储库时,会出现以下错误:
sudo svnadmin dump XYZ > b svnadmin: E200002: Serialized hash malformed ' into a number04: Could not convert '8
更新(2)
现在我修复了一些文件(似乎是编码或类似的问题)。我得到了很多错误,如下所示:
svnadmin: E160004: Corrupt representation '10 830800 775 3124 (null) c38413b634a5c0f296b8806f46ba0d3b8f906125 (null)'
svnadmin: E160004: Malformed representation header at XYZ/db/revs/0/10:830817
我修复了它们:打开文件删除了null所在的空间(看起来像一个正常的空间…),并创建了一个新的空间(只使用windows编辑器)。这修复了这个问题,但它只适用于前9个文件,现在我得到了另一个错误:
svnadmin: E200002: Can't read length line in file 'XYZ/db/revs/0/10'
我已经试过了同样的方法——删除空格和长度后的最后一行(空行),但这对我不起作用。你有什么想法吗?
将来我将使用dump进行转储,并将转储保存到我的ftp服务器。但是,即使进行了这些修改,转储也不起作用-当试图转储r 0-9或r 1时,会出现以下错误:
svnadmin: E200002: Serialized hash malformed
' into a number04: Could not convert '10
提前感谢,Dominik
我使用svn已经很长时间了,所以这只是猜测。我也更愿意在评论中写这篇文章,但太长了;-)
据我所知,他们在每一个新版本中都会更改fs类型。因此,如果您安装了更新的版本,dpkg管理器会尝试转换已注册的存储库。如果用旧的存储库覆盖生成的存储库,则不会进行此转换。CCD_ 1可能会有所帮助。但我不确定。
这是一个链接http://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure指向svn的fs结构的描述。也许通过比较结构和版本可以让你知道哪里出了问题。