尘辰

SVN无法读取cruuent修复方法

原因:突然断电,重启服务器后客户端更新SVN显示Can't read current

      服务端无法浏览目录树 同样显示Can't read current


解决方法:在网上百度和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

编辑后都必须再后面打多一个回车并保存。


评论