我使用的是 SVN 版本 1.4.2。我已验证了我的存储库,发现一个修订版本已损坏。svnadmin verify 命令显示以下消息。我的备份也存在同样的问题。请帮助我解决这个问题。
svnadmin:E200002:序列化哈希缺少终止符
答案1
这意味着其中一个存储库文件已损坏!
它可能是 db/revs 中的修订文件,也可能是 db/revprops 中的 revprop 文件。
A serialized hash is a series of K/V pairs followed by END:
看一眼此解决方案(Python脚本):
- 运行“svnadmin verify -r”并检查“序列化哈希缺少终止符错误”。
- 如果报告错误,脚本将读取该修订版之前的修订版属性(即 revno-1),并将该修订版的时间戳添加一分钟。日志消息更改为“从损坏中恢复”消息。
- 现在,原始损坏的修订属性文件被复制到备份位置,并将更正的修订属性写入其位置。
- 这个过程重复进行,直到得到“有效修订”。此时它停止。