0

我的 SVN 服务器死了。

我有另一台可以用作 SVN 服务器的机器和几台带有原始存储库工作副本的机器。

是否有一种干净的方法可以仅从当前工作副本在新服务器上重新创建存储库?(历史可以忘记)

我试图创建一个新的存储库,破解它的 UUID 并检查完整的目录结构,然后切换 -relocate'ing 工作副本,但由于校验和和修订号不匹配,这不起作用。

任何帮助将非常感激!

4

3 回答 3

2

如果您愿意放弃历史记录,您可以创建一个新存储库并将您的工作副本添加为其新内容。但是,为此,您需要先删除所有.svn文件夹。一些脚本可以做到这一点。

请务必使用您的工作副本来完成所有这些操作,因为这似乎是您必须坚持的最后一件事。

于 2010-12-21T16:17:22.610 回答
2

svn export是删除 .svn 文件夹的正确方法。

于 2010-12-21T16:29:09.620 回答
1

你没有任何备份?

如果是这种情况,那么最简单的方法是创建一个新存储库,将一个工作目录的内容导入其中,然后让其他所有人从新存储库中检查干净。试图破解现有的工作目录将比它的价值更麻烦。

您需要确保“主”工作目录是干净的:svn revert对其执行操作,然后删除所有.svn目录 - 请注意树的每一级都有一个(在执行此操作之前一定要复制)。

如果要保留其他工作目录中的更改,则可以从中删除.svn目录并使用诸如cpio将文件复制到新工作目录之类的工具。

于 2010-12-21T16:17:48.943 回答