Я намагався використовувати прийняту відповідь, але у мене було величезне сховище, і я хотів експортувати невеликий каталог, і я не міг дозволити собі скинути весь сховище.
Отже, я експортував лише версії, де змінився мій каталог (це може не працювати, якщо каталог, який ви хочете експортувати, має посилання на інші місця вашого репо).
svn log URL_to_docs | awk '/^r/{gsub(/^r/,"",$1);print $1}' > revisions.txt
#tac for revisions in reverse (oldest revision first)
tac revisions.txt | while read line; do svnadmin dump /svn/old_repo -r$line >> ./docs_revisions.dump ; done
#You don't have to filter if you commited only files in your directory docs in your exported revisions
svndumpfilter include path/to/docs --drop-empty-revs --renumber-revs --preserve-revprops < ./docs_revisions.dump > ./docs_only.dump
svnadmin load /svn/new_repos < ./docs_only.dump
Ви повинні замінити URL-адресу репо ( URL_to_docs
), місцезнаходження на сервері ( /svn/old_repo
) та шлях до документів у сховищі ( path/to/docs
)
Ви можете легко відредагувати, docs_only.dump
якщо ви хочете змінити розташування свого каталогу документа в новому сховищі.