Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SVN存储库不断损坏_Svn_Version Control_Corruption - Fatal编程技术网

SVN存储库不断损坏

SVN存储库不断损坏,svn,version-control,corruption,Svn,Version Control,Corruption,我一周前才开始体验到这一点,我尝试了很多东西,但它一直在发生。它以失败的提交错误消息开始: 无法在文件“(修订路径)”中设置位置指针:尝试了 使文件指针移动到文件开头之前 在第一次得到它时,我发现一些资源表明最新版本中存在某种腐败。我研究了如何删除修订,然后创建了一个新的回购协议,并将未损坏的修订转储到其中。这是一个成功的过程,但必须一次又一次地重复,这是一个相当繁重的过程 第二次发生时,我发现它解释了如何直接在repo文件夹结构中删除损坏的修订,并将当前修订设置回先前的修订。这比前面提到的方法

我一周前才开始体验到这一点,我尝试了很多东西,但它一直在发生。它以失败的提交错误消息开始:

无法在文件“(修订路径)”中设置位置指针:尝试了 使文件指针移动到文件开头之前

在第一次得到它时,我发现一些资源表明最新版本中存在某种腐败。我研究了如何删除修订,然后创建了一个新的回购协议,并将未损坏的修订转储到其中。这是一个成功的过程,但必须一次又一次地重复,这是一个相当繁重的过程

第二次发生时,我发现它解释了如何直接在repo文件夹结构中删除损坏的修订,并将当前修订设置回先前的修订。这比前面提到的方法更有效、更快,但我仍然不想重复

然后今天又发生了

每一次我都使用了
svnadmin verify
,得到了这个(显然每次都有不同的修订号):

svnadmin验证(回购路径) *正在验证修订版0处的元数据。。。 *验证存储库元数据时出错。 svnadmin:E160058:l2p索引项PHYS-1与PHYS 1407的p2l索引值日志r391:i10不匹配

我在谷歌上搜索了那个错误,但实际上什么都不存在,对于那个错误代码或那个神秘消息中的其他垃圾,没有任何结果

请帮我想办法阻止这种事情发生

编辑:在成功提交了8个修订版之后,我这次遇到了一个新错误:

第398版中的项目索引69太大

svnadmin验证报告:

索引文件(repo路径)/db/revs/0/396在偏移量0x43c8处意外结束

这是偏移量的值。这似乎并不是任何事情的结束:

也表示腐败。到底发生了什么事

  • 没有“乌龟储藏库”这样的东西。您有一个Subversion存储库,很可能是您错误地访问了它,导致了损坏
  • 您很可能将存储库存储在网络共享上,并通过file://协议访问它。如果是你的情况,请阅读

  • 太好了,谢谢你的回答。从那时起,我自己就发现了这一切,现在我正在一台真正的SVN服务器上托管我的回购协议。有一个正式的答案很好,这样其他人也可以得到帮助。@rory.ap如果您将存储库存储在网络共享上,请在您的问题中提及这一点。我希望我的回答也能帮助其他人解决这些问题。顺便说一句,您是否考虑过使用VisualSVN服务器?为了将来参考,您是否有多个用户同时通过
    文件://
    协议访问存储库,或者这是一个单用户repo?