SVN 存储库中缺少修订
Posted
技术标签:
【中文标题】SVN 存储库中缺少修订【英文标题】:Missing revision in SVN repository 【发布时间】:2011-11-29 16:18:16 【问题描述】:显然其中一个旧版本已从 svn 存储库中消失:
svn checkout http... myrepo
svn: REPORT of '/svn/myrepo/!svn/vcc/default': Could not read chunk size: connection was closed by server (http://localhost)
$ svnadmin verify myrepo
* Verified revision 0.
...
svnadmin: No such revision 262
$ svn log -v -r 262
svn: No such revision 262
$ ll /var/SVN/myrepo/db/revs/0/
...
-rw-r--r-- 1 www-data www-data 27289777 2010-10-21 22:21 260
-rw-r--r-- 1 www-data www-data 4727180 2010-11-12 18:51 261
-rw-r--r-- 1 www-data www-data 2180586 2010-11-14 20:33 263
...
在这个问题上搜索说“从备份恢复”,但我所有的 3 个备份都有这个缺失的修订版,所以它一定已经有一段时间了。我只有在无法提交特定文件时才注意到它。我有一个当前的工作副本。除了从头开始我还能做什么?!?
【问题讨论】:
【参考方案1】:您有权访问原始存储库吗?您可以通过进入存储库文件夹来验证是否缺少修订,然后在 db 文件夹下,您将看到一系列文件夹。对于 rev 262,它将位于文件夹“0”中,其中包含 0-999 的所有修订。可以小心地从存储库中删除修订。当一个或多个文件被提交时,我们已经这样做了,无论出于何种原因,它都不应该成为 repo 的一部分。您可以使用 svn 命令删除它们,但仍然可以通过指定修订来检索它们。有没有可能有人做过这样的手术?
注意事项 - 即使您知道自己在做什么,在存储库中弄脏也会导致问题?您可能需要在调查之前制作一份 repo 的副本,以防万一出现问题。
【讨论】:
感谢您的回答。我是该存储库(个人项目)的唯一用户,是的,我拥有完全访问权限,并且正如我所指出的,缺少 db/revs/0/262。 问题解决了吗?我有同样的问题:(以上是关于SVN 存储库中缺少修订的主要内容,如果未能解决你的问题,请参考以下文章
如何 git-svn 从 Subversion 存储库克隆最后 n 个修订?