SVN断电故障恢复

问题描述:SVN服务器突然断电,重启后整个SVN服务器不能工作。
报错情况:Error: 不能打开文件“*\db\current”: 文件或目录损坏且无法读取。
处理方案:
首先,SVN的版本日志信息存在SVN版本库DB目录下的revprops目录中,
并且最新的文件是以当前版本号命名。比如:“4082”
其次,SVN的版本日志文件还有一个索引文档current在DB目录下面。文档里面的内容一定有当前
最新的日志文件的名称比如:“4082 4nr6 i”。我们只关注前面的一串“4082”。

由于断电宕机时候刚好有客户端提交程序代码,而这个时候SVN系统最先更新current文档中的内 容,之后才产生的一个新的日志文件比如:“4082”。而这个时候current里面的内容是正确的, 但是所产生日志文件中的内容格式完全不正确,这才是导致SVN不能工作的真正原因。

针对这些分析,我们只要将DB目录中current文档内容改为前一个版本比如“4081”,然后
将revprops目录中的最新文档例如“4082”删除

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用svn命令行时,遇到"unable to update"错误信息时,可能存在以下几个原因和对应的解决办法: 1. 无法连接到仓库:首先检查网络连接是否正常,确保能够访问到svn服务器。可以尝试使用ping命令检查网络连接。如果网络连接正常,可能是因为svn服务器故障或配置错误导致无法连接到仓库。此时需要联系系统管理员进行排查和修复。 2. 权限问题:如果没有足够的权限进行更新操作,也会出现该错误。可以检查svn账号的权限设置,确保具备更新仓库的权限。如果没有权限,需要联系仓库管理员给予适当的权限。 3. 工作副本冲突:当多人同时对同一个文件进行修改时,可能会导致工作副本冲突,从而无法更新。可以尝试使用svn cleanup命令清理工作副本,然后重新尝试更新操作。 4. 本地文件锁定:如果文件被其他应用程序锁定,也无法进行更新操作。可以使用svn status命令检查文件的状态,确认是否被锁定。如果被锁定,关闭锁定文件的应用程序或联系文件拥有者解锁。 5. 服务器版本不匹配:如果使用的svn客户端版本与服务器不匹配,也会导致更新失败。可以尝试更新svn客户端或联系仓库管理员以获取正确的svn版本。 总结:当遇到"unable to update"错误时,首先检查网络连接、权限设置、工作副本冲突、文件锁定和svn版本是否匹配。根据具体情况采取相应的解决措施,可通过清理并重新更新工作副本、修改权限设置、解除文件锁定、联系管理员等方法来修复该错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值