将svn文件夹移动到自己的存储库

时间:2012-05-07 12:01:57

标签: svn svnadmin svndumpfilter svndump

我有一个扩展和扩展的存储库。现在我正在清理它,并希望将每个项目移动到一个单独的存储库。我目前的设置:

[ProjectRepo]
- Projects
  - Software1
    - trunk (VS2010 solution inside here)
      - .sln
      - vs project #1
      - vs project #2
      - vs project #3      
    - branches
    - tags
  - Software2
    - trunk (VS2010 solution inside here)
      - .sln
      - vs project #1
      - vs project #2
      - vs project #3      
    - branches
    - tags
  - Shared
    - shared component #1 (vs project)
      - trunk
      - branches
      - tags
    - shared component #2 (vs project)
      - trunk
      - branches
      - tags

现在我想将每个项目和每个解决方案移动到trunk目录中的自己的存储库中。我一直在尝试使用svnadmin dump和svndumpfilter,但问题是Node-path保持像旧结构一样。如何进入以下结构?

[Software #1 Repo]
- trunk
- branches
- tags

[Software #2 Repo]
- trunk
- branches
- tags

[Shared Component #1 Repo]
- trunk
- branches
- tags

1 个答案:

答案 0 :(得分:0)

如果您能够使用svndumpfilter成功过滤项目(如果项目之间存在任何'交互',我不认为这是可能的,例如复制或合并),那么您可以使用旧结构创建新的存储库,然后通过svn copy和svn delete创建新结构(即将Software1Repo / Projects / Software1 / trunk复制到Software1Repo / trunk,然后svn删除它等)。