SVN - Как мне создать хранилище subversion с "макетом одного проекта с несколькими проектами"?

Я только что установил Subversion (Collabnet). Документация объясняет, как создавать репозитории, которые я сделал, но я не могу понять, как создать конкретный макет. Я хочу создать этот макет

c:\repositories
 +- MyProjectRepository
     +- project1
          +--- trunc
          +--- branches
          +--- tags
     +- project2
          +--- trunc
          +--- branches
          +--- tags
     +- project3
          +--- trunc
          +--- branches
          +--- tags

Документация только позволяет мне создать новый репозиторий из шаблона, который производит этот макет:

c:\repositories
 +- MyProjectRepository
     +-- project1
          +--- trunc
          +--- branches
          +--- tags

Как я могу достичь первого макета? т.е. несколько проектов в одном хранилище.

редактировать

3 каталога считаются специальными? Например, если я создам структуры каталогов вручную, будет ли Subversion распознавать эти каталоги? то есть, если я создаю тег в project3, ссылка тега будет связана с project3/tags.

Спасибо

3 ответа

Решение

Subversion примет любую структуру каталогов, которую вы хотите. Просто проверьте созданный вами репозиторий из верхнего уровня репозитория, а затем удалите существующую структуру. Затем вы можете настроить каталоги, которые вам нравятся (в любой конфигурации), а затем просто зафиксировать вашу новую структуру обратно в хранилище.

Примечание. Это будет работать только для нового (пустого) хранилища. Репозиторий с уже внесенными изменениями будет немного сложнее, но идея остается прежней.

Альтернативно вы можете использовать

svn mkdir <repo>/MyProjectRepository -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1 -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1/trunk -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1/branches -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1/tags -m "project1 tree created"

Я знаю, что это старая тема, но я заметил, что никто не упомянул использование svn importЭто то, что я всегда делал, и кажется простым способом начать новый репозиторий или даже добавить проект позже.

Во-первых, вы создаете свой репозиторий с svnadmin create,

Затем вы создаете папку контейнера (давайте назовем ее structure) и вы поместите в эту папку именно ту структуру, которую хотите импортировать в свой репозиторий.

В итоге вы получите следующую папку:

\structure
    \project1
        \branches
        \tags
        \trunk
    \project2
        \branches
        \tags
        \trunk
    \project3
        \branches
        \tags
        \trunk

Тогда вам просто нужно выполнить svn import structure http://path-to-your-repository,

Изменить: проверьте эту страницу для более подробной информации о том, как использовать svn import команда http://svnbook.red-bean.com/en/1.7/svn.tour.importing.html.

Другие вопросы по тегам