Subversion - переместить папку в другой уже существующий репозиторий - PullRequest
5 голосов
/ 24 января 2011

У меня есть следующая структура SVN:

  • ExistingRepository1

    • ...
    • MyFolder
      • FolderToMove
      • ...
  • ExistingRepository2

    • ...
    • AnotherFolder
      • FolderToMove <- перенесено сюда </li>
      • ...

Поэтому я уже прочитал этот вопрос: Как переместить одну папку из одного хранилища Subversion в другое хранилище? Но в моем случае ExistingRepository2 уже существует.Так как я могу это сделать?Я хочу иметь все ревизии в новом проекте.

У меня есть, например, номер ревизии 1000 в ExistingRepository1 -> MyFolder -> FolderToMove, но в ExistingRepository1 уже есть ревизия с номером 1000. Итак, что будетsvn load делать?Будет ли он автоматически перемещать номера ревизий?

Это будут команды:

svnadmin dump /svn/ExistingRepository1 > ./repository.dump
svndumpfilter include MyFolder/FolderToMove --drop-empty-revs --renumber-revs --preserve-revprops < ./repository.dump > ./folderToMove_only.dump
svnadmin load /svn/ExistingRepository2 < ./folderToMove_only.dump

Заранее благодарю за помощь, С наилучшими пожеланиями, Тим.

1 Ответ

5 голосов
/ 25 января 2011

Здесь - кто-то, кто утверждает, что переместил каталог через существующие репозитории (с некоторыми комментариями блога, которые указывают на успех). Очевидно, он создает весь путь в целевом хранилище, но я представляю, что, как только каталог окажется в целевом хранилище, вы можете легко переместить его туда, куда вы хотите (при этом сохраняя его историю).

[Изменить]

Я успешно проверил это. Вот команды, которые я использовал:

svnadmin dump /path/to/source/repo | svndumpfilter --drop-empty-revs --renumber-revs include /folder/to/transfer/ > dumpfile
svnadmin load /path/to/destination/repo < dumpfile

Затем я переместил переданный файл (используя Repo-браузер TortoiseSVN).

...