2012-05-07 15 views
1

У меня есть репозиторий, который расширяется и расширяется. Теперь я очищаю это и хочу переместить каждый проект в отдельный репозиторий. Моя текущая настройка:Перемещение папок svn в собственный репозиторий

[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 

Теперь я хочу, чтобы переместить каждый проект и каждое решение в его собственном хранилище в каталоге багажника. Я пытался с svnadmin дампом и svndumpfilter, но проблема в том, что Node-путь продолжает оставаться как старая структура. Как можно перейти к следующей структуре?

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

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

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

Каковы преимущества в перемещении проектов в разных хранилищах? Обычно лучше всего использовать код только в одном репо. –

+0

У нас есть общие компоненты среди нескольких частей программного обеспечения. На мой взгляд, проще связать определенный тег с ревизией, когда в отдельных репозиториях ... Или у вас другое мнение по этому поводу? – ferdyh

+0

Посмотрите на свойство svn: external для пути к зависимостям hanlde с общими компонентами: http://svnbook.red-bean.com/en/1.7/svn.advanced.externals.html –

ответ

0

Если вы в состоянии успешно фильтровать, кроме проектов с svndumpfilter (я не думаю, что это возможно, если существует какое-либо «взаимодействие» среди проектов, как копирование или слияние), то вы можете создавать новые репозитории со старой структурой, а затем создать новую структуру через svn copy и svn delete (т.е. скопировать Software1Repo/Projects/Software1/trunk в Software1Repo/trunk, затем удалить svn и т. д.).

 Смежные вопросы

  • Нет связанных вопросов^_^