如何将SVN存储库作为文件夹复制到具有历史记录的另一个存储库

Jul*_*ias 3 svn project repository

我有2个存储库

http://mysnv/svn/proj1/trunk
Run Code Online (Sandbox Code Playgroud)
  • proj1_folder1
  • proj1_folder2

http://mysnv/svn/proj2/trunk
Run Code Online (Sandbox Code Playgroud)
  • proj2_folder1
  • proj2_folder2

如何将具有历史记录的proj2复制为proj1主干中的文件夹以获得以下结果

http://mysnv/svn/proj1/trunk
Run Code Online (Sandbox Code Playgroud)
  • proj1_folder1
  • proj1_folder2
  • proj2
    • proj2_folder1
    • proj2_folder2

其实我想要做的是只有一个SVN存储库的所有内容proj2和历史中的文件夹proj2http://mysnv/svn/proj1/trunk

这是我正在使用的SVN版本:

svn,版本1.7.8(r1419691)

我找到了这个博客,但svn合并对我来说还不清楚.它在哪里./foo/trunk:proj1

我的svn文件夹结构是这样的/data/svn/repos/,我没有看到trunk文件夹.

我正在寻找一个命令来制作副本,而不会影响我的主项目proj1.

Laz*_*ger 7

物理聚合

  • 从proj2存储库(svnadmin dump | svndumpfilter --include --include > dumpsvnrdump URL-proj2_folder1 > dump1 & svnrdump URL-proj2_folder1 > dump2)创建所需路径的转储
  • 使用更改的父文件夹(svnadmin load --parent-dir trunk < dump)将转储装载到proj1中
  • proj1/trunk/trunk下检查proj2_folder1和proj2_folder2数据的存在(第二个trunk是repo1转储中的基本路径)
  • 将子trunk文件夹重命名为proj2(svn mv)

使用父目录将svnrdump-ed trunk加载到新repo中的示例 trunk/Project1

在此输入图像描述

逻辑聚合

  • 创建proj1/trunk/proj2文件夹
  • 在proj2中创建两个svn:externals(目录类型):链接到proj2/trunk/proj2_folder1的proj2_folder1和链接到proj2/trunk/proj2_folder2的proj2_folder2