SVN 存储库还原



我需要将一些分支存储库合并到另一个分支存储库中,相反,我错误地使用了覆盖目标存储库的"svn copy",因此一些文件丢失了。好消息是,我每天都使用"svnadmin dump"创建备份,但我不确定如何最好地恢复丢失的文件并保留以后添加的新文件。

我在想这样做:

  1. 创建一些 SVN 临时仓库
  2. 使用 "svn load/path/to/the/temp-repository/
  3. cd/path/to/the/temp-repository/
  4. 递归删除所有 .svn 目录
  5. 转到我已覆盖的分支,然后使用 rsync 将丢失的文件发送到工作存储库。

不确定这是否是最好的方法。有什么想法吗?

我有更好的消息要告诉你

Subversion 存储更改之间的所有历史记录。

当您意外svn copy时,您将其他提交添加到目标分支中。您可以

  • svn up GOODREV好的提交(或svn co BRANCH@GOODREV到新的WC)和提交(次要的编辑-保存-提交)在坏的
  • 通过反向合并撤消错误提交

对于 svnadmin dump

您必须确定这些备份是增量(--增量)还是完整备份。在已满的情况下,您必须找到存在 GOODREV 的备份,svnadmin load此转储到存储库中,svn copy从 NEW-REPO 分支到 OLD-REPO 分支,杀死还原的存储库

提示:你必须更好地学习存储库管理:第 4-5 页只是谵妄 - SVN 存储库具有完全不同的文件树,并且 repostory 的子树不作为相同结构的物理树存在(.svn 文件是工作副本属性和 WC 元数据的存储)

破坏逻辑和更好(比你的)svndump 用法再次不同。如果你仍然想隐藏你的错误,你有

  • 为修订范围创建新的完整转储(-r LOWER:UPPER 选项),这将排除 BADREVISION。
  • 禁用所有连接
  • 删除旧存储库 (rm REPODIR + mkdir REPODIR)
  • 从转储还原存储库

相关内容

  • 没有找到相关文章

最新更新