[版本管理]有惊无险修复svn服务器Invalid filesystem revision number问题

问题起因:某一天下午,团队成员在向svn服务端提交新内容,突然整栋楼断电了,自然,提交的过程被中断了。当时,还没有什么想法。

等有电后,另外一同事在update项目时,发现无法正常使用svn,一直报异常信息:

Invalid filesystem revision number
svn: 没有版本 19956

处理过程:  

一时不得其法,google了后,发现了遇到了同样问题的同行http://coldfusion-archive.robgonda.com/blog/index.cfm/2007/10/19/SVN-PROPFIND-request-failed--No-Such-Revision/
;按照他的做法,我先备份好服务端的svn根目录,然后执行以下操作:

1)打开svn根目录下的 db/revs目录,找到最新的子文件夹(一般是版本号的前一位或者两位及以上的数字)19,打开它,发现里面的版本记录为19955,这说明在生成19956版本

记录的过程中,被断电中断了,导致了数据不一致;

2)按照参考文章的做法,我打开了 /db目录下的current文件(记录当前的最新版本号),发现版本号为19956,于是将它改为19955;按照参考文章的说法,改完后,应该是可以

正常使用的了。但是我这里却报了另外的异常信息:

Malformed file
svn: 不能解析锁/条目的哈希文件“H:\svnroot\db\locks\580\580c93793d2f9df159ce7f1c5de5862c“

3)顺着参考文章的思路,我估计可能是锁文件的记录是19956的,于是就按照提示找到db/locks/580文件夹,发现其下有最新的哈希文件 580c93793d2f9df159ce7f1c5de5862c。将它备份好后,我就直接将580文件夹删掉了,此时svn可以正常使用了,版本号为19955。

4)至此,问题已经莫名其妙的解决了,但我担心提交生成19956版本时的文件再提交时svn会怎么处理。明天再看下了。

 

[版本管理]有惊无险修复svn服务器Invalid filesystem revision number问题,布布扣,bubuko.com

时间: 2024-10-12 12:45:40

[版本管理]有惊无险修复svn服务器Invalid filesystem revision number问题的相关文章

Linux 安装部署SVN服务器

svn 版本管理工具. svn服务器有2种运行方式:独立服务器和借助apache运行.两种方式各有利弊,用户可以自行选择. svn存储版本数据也有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统).因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点. 1.环境 # cat /etc/redhat-release CentOS release 6.3 (Final) # getconf LONG_BIT 64 2.安装 svn #yum -y

linux下svn服务器的搭建

网上的教程实在是太恶心了,不是太老,就是有问题,刚参考的一篇文章也有问题.自己记录下来,以后用就方便了,现在一边重新安装一遍,一边记录.笔者亲测,今天是5月29号深夜. linux用的是centos6.2,yum install subversion,安装svn服务端.本篇操作均为root用户权限. 1.建立svn库目录. mkdir -p /opt/svndata/repos1 2.建立版本库 svnadmin create /opt/svndata/repos1 3.修改配置文件 (1)服务

搭建svn服务器

一.搭建svn服务器1.环境检查 [[email protected] ~]# cat /etc/redhat-release  CentOS release 6.8 (Final) [[email protected]x-node01 ~]# getconf LONG_BIT 64 [[email protected] ~]# /etc/init.d/iptables status iptables: Firewall is not running. [[email protected] ~]

ubuntu搭建SVN服务器

安装软件包 如果没有安装subversion软件包,需使用命令sudo apt-get install subversion来安装软件包! 选择文件位置 安装上软件包后需要选择SVN服务文件以及配置文件位置.下面以目录 /home/ svn/为例! 创建版本仓库 进到目录cd /home/svn/中,然后创建一个自己的版本库sudo svnadmin create /home/svn/eth10,但需要先创建目录eth10sudo mkdir eth10!使用ls -ll查看版本仓库(eth10

靠谱SVN 服务器搭建步骤以用法

一.实验环境: [[email protected] ~]# uname -a Linux node02 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux [[email protected] ~]# cat /etc/redhat-release CentOS release 6.6 (Final) [[email protected] ~]# [[email pro

Mac下SVN服务器环境的搭建和配置(除展示图片外,所有命令在Linux/Unix下适用)

这几天领导没有安排工作,闲着没事就想把自己这两年做iOS开发时感觉知识有欠缺的地方想好好深入地补习一下,昨天和今天就计划好好学习下SVN和git的从创建和到原理,到命令,到界面的使用.一不小心被另一领导发现我在研究这个,又看我没事就想让我帮忙帮她的组把SVN权限给改一改,我也挺乐意,能让自己所学的东西派上用场那是何等的幸运,而且她也让我更相信准备着被人宰,总比等死好,起码能卖个价钱(微笑). 我们多数开发公司都是在windows下使用VisualSVN搭建代码版本控制服务器环境的,这一块我也已经

Linux系统环境搭建SVN服务器环境详解

Linux系统环境搭建SVN服务器环境详解: 本篇文章主要介绍的内容是在Linux系统下如何搭建SVN服务器的,目的是为了很好的实现代码版本控制管理,具体如下所示介绍: 一.安装需要的软件包 #yum install subversion     ---安装SVN服务工具 #yum install httpdmod_dav_svn mod_perl    ---用于支持WEB方式管理SVN服务 #yum install wgetmake unzip perl*       ---必备的软件包 二

版本管理种类与Svn工具介绍(一)

什么是SVN(Subversion)? Svn(Subversion)是近年来崛起的非常优秀的版本管理工具,与CVS管理工具一样,SVN是一个跨平台的开源的版本控制系统.Svn版本管理工具随着时间改变的各种数据.这些数据都放置在一个中央资料档案库(repository)中,这个档案库很像一个普通文件的服务器或者FTP服务器,但是,与其他服务器不同的是,SVN会备份并记录每个文件每一次的修改更新变动.这样我们就可以把任意一个时间点的档案恢复到想要的某一个旧的版本,当然也可以直接浏览指定文件的更新历

Mac 环境下svn服务器的配置

Mac 环境下svn服务器的配置 本文目录 ? 一.创建代码仓库,用来存储客户端所上传的代码 ? 二.配置svn的用户权限 ? 三.使用svn客户端功能 在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境.在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置. 我们首先来看下,如何在Mac环境下搭建svn服务器端环境. 一.创建代码仓库,用来存储客户端所上传的代码 我现在 /User