Как перенести часть репозитория SVN в новый репозиторий?
Чтобы перенести содержимое полный Репозиторий SVN в новый репозиторий, сначала нужно сбросить старый репозиторий:
svnadmin dump /path/to/repository > repository-name.dmp
а затем загрузите его в новый, используя svnadmin load
.
Но я не уверен, как просто перенести деталь. Мне еще нужно все это свалить? Могу ли я найти ту часть, которую хочу?
Просто сбросить myproject
, Я пробовал это, но это не сработало:
svnadmin dump /path/to/repository/myproject
Любые идеи?
Если вы хотите перетянуть часть репозитория, конкретный подкаталог. Сначала вам нужно выгрузить весь репозиторий, запустить svndumpfilter, чтобы включить этот каталог, и, наконец, загрузить все в чистый репозиторий.
Допустим, вы хотите переместить каталог Calc, вы бы сделали:
svnadmin dump repos > dumpfile
cat dumpfile | svndumpfilter include Calc > dumpfile-Calc
Затем, чтобы правильно загрузить каталог Calc, вы должны:
svnadmin create newrepos
svnadmin load Calc < dumpfile-Calc
Это взято и немного изменено из документации: http://svnbook.red-bean.com/en/1.0/ch05s03.html
Когда я хотел это сделать, я просто делал svnadmin dump
и svnadmin load
, так же, как и вы, я удалил все остальное из репо.
Размер репо был всего 3 ГБ, так что это не было таким уж большим делом, а для безопасности это не так хорошо, поскольку вы, очевидно, можете отменить удаления, откатившись, но он достиг того же, потому что я не мог найти способ сделать это с сохранением истории изменений.