【问题标题】:How to copy subversion repository as a new directory to existing repository?如何将颠覆存储库作为新目录复制到现有存储库?
【发布时间】:2010-04-17 11:42:20
【问题描述】:

我在不同的主机(host-ahost-b)上有两个现有的颠覆存储库,我想将一个目录从 repo A 复制到 repo B .

基本上https://host-a/repo/some/path/moduleA 应该复制到https://host-b/repo/some/other/path/moduleA。应保留所有历史记录,并应保留 host-b 中的现有数据。

这两个存储库没有任何冲突的目录层次结构。这些存储库没有共同的祖先。

【问题讨论】:

    标签: svn repository copying


    【解决方案1】:

    您检查过svnadmin dumpsvnadmin load 的组合吗?根据Subversion red book,它们可用于将一个存储库与另一个存储库合并:

    转储格式还可用于将多个不同存储库的内容合并到一个存储库中。通过使用 svnadmin load 的 --parent-dir 选项,可以为加载过程指定一个新的虚拟根目录。

    更新:

    Juha,回应您的评论:我认为有一个名为 svndumpfilter(参见 this section in the red book)的命令可能会有所帮助。

    【讨论】:

    • 这似乎描述了如何将整个外部存储库复制到存储库。我只想要一个 repo 目录。
    • 我已经更新了答案(cmets 似乎不喜欢额外的链接...)
    【解决方案2】:

    您可以为此使用svn:externals。这将消除将文件从一个存储库复制到另一个存储库的需要,并且还将继续使这些文件夹在每个存储库中保持同步。您也可以访问完整的提交日志。

    【讨论】:

    • 我真的只想使用一个仓库,所以 svn:externals 不适合我。
    猜你喜欢
    • 1970-01-01
    • 2015-09-25
    • 1970-01-01
    • 1970-01-01
    • 2014-02-27
    • 2012-03-18
    • 1970-01-01
    • 1970-01-01
    • 2019-03-10
    相关资源
    最近更新 更多