解决方法:在网上百度和google了一大圈之后,终于得知是断电时current和txn-current文件没有写入当前最新版本号和最新版本的路径问题
当时非常抓狂,项目刷新一直为空。
1.先把current和txn-current 信息补全。服务端顺利显示目录树,但客户端仍然无法更新。显示错误忘记了,意思就是客户端目前版本比服务端还新。
2.竟然服务端可以顺利显示目录树,表示文件应该不会有大的问题,问题是否出现在最后一个版本上。
3.在客户端新建一个文件夹测试更新,可以顺利更新,但最后版本号比服务端有的版本号少1个版本。
4.基本确定最后一个版本在断电的时候出现了问题。考虑在新的客户端随意更改,上传更改来重新擦写最后一个版本。
5.无法上传到服务器,显示版本冲突。原来的服务器版本号其实已经存在,既然无法擦写,就直接把记录版本信息的内容删除看看。
6.直接把db\revs和db\revprops中,最后的版本删除。重新在新客户端上传修改,修改成功!擦写了服务端最新版本。继续做一次修改上传,把服务端版本再提升一个版本,让当前服务端版本比旧客户端高。
7.在旧客户端尝试更新,更新成功!
8.终于不需要其他用户新建客户端了,直接可以更新,只是原来最后一个版本会没有了。。。。
文件作用:
db/current:记录当前最新版本号
db/txn-current:记录版本库中版本信息存放文件夹,例如E:\svn\db\revprops\0,当前值就是0
编辑后都必须再后面打多一个回车并保存。
注:应该是文件编码问题,直接用记事本打开修改,会出错。建议还是使用第三方编辑器进行修改,我用的是notepad++。
刚开始我以为改错了,后面复制了其他项目的db/current和db/txn-current覆盖上去,刷新就可以了,但还是要回退到最近的版本,所以尝试用第三方编辑器修改,结果成功了。