我已经重置了我的 Raspberry Pi(运行的垃圾太多)。我想我可以简单地使用我的备份来让 SVN 再次运行。问题来了:我的备份(每天,全自动)只是将所有文件夹和文件复制到 FTP-Web 服务器。现在我刚刚将它下载到我的 Windows-PC 并通过 WinSCP 将其复制到 Raspberry Pi(首先我使用 sudo svnadmin create 创建了文件夹),我删除了所有现有文件和文件夹,并用 FTP 服务器中的内容替换了它们- 应该一样吗?之后我设置了权限,现在它应该可以工作了。但它没有 - 这是问题所在(当试图用谷歌浏览器打开 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-error 日志也记录了问题:
[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 'fsfs\r'
[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 来做一个dump 并将dump 保存到我的ftp-server。但即使进行了这些修改,转储也不起作用 - 当尝试转储 r 0-9 或 r 1 时,会出现以下错误:
svnadmin: E200002: Serialized hash malformed
' into a number04: Could not convert '10
在此先感谢,多米尼克