SVN如何解决乱序存储库

时间:2013-05-02 03:00:13

标签: linux svn svnadmin

在CentOS Linux 6.3之上,我们在SVN 1.6.11上运行了大约5个不同的SVN存储库。上周我被要求将我们的SVN服务器迁移到新服务器。我们有一个cron作业,每周对每个仓库进行一次完整备份,每隔一晚我们通过以下方式进行增量备份: svnadmin dump -r 100-200 --incremental repo |gzip -9 > incremental_100_200.svn.gz (其中repo是repo的名称,100是自上次备份以来最早的修订版,200是此备份时最新的版本)

我完成了对新服务器的上次完整备份的完全恢复,创建了一个几乎是最新的repos副本。整个星期,我计划将增量备份从旧服务器恢复到新服务器以保持同步,然后在星期五切换到新服务器。

不幸的是,我一定错过了一些repos的增量恢复,并且不知何故没注意到,然后我们切换到新服务器,人们继续添加文件并进行修改,为repo添加了新的修订版。问题是,由于在一些回购中缺少一些修订,现在新版本已经采用了这些版本号,因此我不能只从旧回购中获取增量并将其加载到新回购中,因为现在还有其他数据占用那些修改。我该怎么办?

1 个答案:

答案 0 :(得分:0)

将两个存储库转换为Git存储库,将它们导入到同一个项目中,使用git rebase在旧更改之上移动新更改,然后将存储库从Git推回到SVN。完全可能(可能?)在rebase期间会出现合并冲突,您需要手动修复。