8

我正在尝试克隆存储库,但它应该是彼此的独立副本。这背后有什么魔力,还是只是使用 svn 客户端并对其进行克隆?

谢谢

4

3 回答 3

11

试试svnadmin hotcopy。您可以在 svn book (带有 Subversion 的版本控制)的repo 维护部分中查找它,特别是在“存储库复制”部分中。还有该命令,但只有在尝试创建镜像时才需要此命令。 svnsync

引用这本书:“简单地进行递归目录复制会产生生成错误备份的风险。在 Berkeley DB 的情况下,文档描述了可以复制数据库文件的特定顺序,这将保证有效的备份副本。A FSFS 数据存在类似的排序。” FSFS 和 Berkeley DB 是常规 subversion 安装提供的两个数据库选项,FSFS 是默认设置。

示例用法(再次来自书中):

$ svnadmin hotcopy /var/svn/repos /var/svn/repos-backup
于 2013-02-06T17:04:33.970 回答
2

使用svnrdump工具通过 HTTPS 和 svn://(即远程)获取存储库转储(完整的修订历史)并将svnadmin load其放入新的干净存储库。请注意,为了获得完整的存储库转储,您必须对存储库中的所有树具有完全读取权限,否则转储可能不完整。

于 2014-09-16T12:37:16.177 回答
0

我正在尝试做同样的事情,基本上我所做的如下:

svnadmin dump(带有可选的-r (revision number)),我用它来转储我们代码的最新版本,然后只加载最新版本,但是如果你需要谁做了什么的完整历史,那么命令没有 -r:

svnadmin dump /path/to/repository > repo.dmp

然后将其加载到新的存储库中

svnadmin load /path/to/new/repo < repo.dmp
于 2020-01-30T13:53:27.267 回答