2

我正在尝试从我不再拥有远程存储库的 SVN 备份中恢复源代码。这是一个旧项目,它使用 BDB 作为 SVN 客户端不再支持的数据库。

此备份中的文件是:

db/
hooks/
locks/
format
README.txt

到目前为止我已经尝试过:

  1. 使用从svnadmin

  2. 使用 svn 1.8(仍然支持创建 BDB 存储库)创建新存储库并复制db/文件夹。文件夹的结构与db/较新的版本有本质的不同,我备份中的那个有修订和事务作为文件夹,而不是文件。

  3. 从 svn 1.6(来自apache 档案)下载源代码并从头开始编译。由于许多过时的依赖项,我无法编译。

一些附加信息:

  • 我正在使用 Linux 来执行此操作,但我也在 Windows 和 Mac 中尝试过

  • 我安装的当前svn版本是1.8

  • 我无权访问原始服务器所有我有一个备份 zip 文件

  • 这是 db 文件夹的内容:

revprops/
revs/
transactions/
txn-protorevs/
__db.001
__db.002
__db.003
DB_CONFIG
__db.register
log.0000000001
nodes
txn-current
txn-current-lock
uuid
write-lock

我坚持这一点,我不知道我还能尝试从这个存储库中提取源代码。

4

1 回答 1

3
  1. 迁移手册可能会有所帮助
  2. 正如我在Apache Subversion 1.8 发行说明中所读到的(现在)

Subversion 开发人员决定弃用基于 Berkeley DB 的存储库后端。... 这并不意味着:用户不必立即将其存储库迁移到 FSFS。BDB 后端将继续工作,并将获得与目前一样多的测试覆盖率。

即,您可以按照 Collab 文档中的建议拥有带有 BDB 后端的存储库并使用它执行所有常规管理操作 - 创建转储并将其加载到具有 FSFS 后端的新存储库中。如果您的数据库在之后没有损坏,recover则转储|加载技巧必须得到预期的结果

于 2019-10-02T22:01:42.957 回答