我正在尝试从 SVN 备份中恢复源代码,但我不再拥有远程存储库。这是一个旧项目,它使用 BDB 作为数据库,SVN 客户端不再支持。
此备份中的文件是:
db/
hooks/
locks/
format
README.txt
到目前为止我已经尝试过:
使用
svnadmin
中的恢复命令使用 svn 1.8(仍支持创建 BDB 存储库)创建新存储库并复制
db/
文件夹。db/
文件夹的结构与较新版本本质上不同,我的备份中的文件夹将修订和事务作为文件夹,而不是文件。从 svn 1.6(来自 apache archives )下载源代码并从头开始编译。由于许多过时的依赖项,我无法编译。
一些附加信息:
我使用 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
我被困在这个问题上,我不知道我还能尝试从这个存储库中提取源代码。
最佳答案
- This manual迁移可能会有所帮助
- 正如我(现在)在 Apache Subversion 1.8 Release Notes 中读到的那样
The Subversion developers have decided to deprecate the repository back-end based on Berkeley DB. … What this does not mean: Users do not have to immediately migrate their repositories to FSFS. The BDB back-end will continue to work, and will receive as much test coverage as it has until now.
即您可以按照 Collab 文档中的建议,拥有带有 BDB 后端的存储库,并用它执行所有常见的管理操作 - 创建转储并将其加载到带有 FSFS 后端的新存储库中。如果您的数据库在恢复
后没有损坏,那么 dump|load 技巧必须获得预期的结果
关于svn - 从 BDB SVN 存储库恢复源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58209758/