Как загрузить частичный дамп репозитория без изменения номеров ревизий - PullRequest
1 голос
/ 04 мая 2020

У нас есть корпоративный SVN-репозиторий со множеством проектов, каждый со своими ветками / trunk / tags. Моя команда заинтересована только в 2 проектах.

Поэтому я создал 2 файла дампа, используя svnrdump. Сейчас я пытаюсь загрузить их в мой местный SVN. Но я бы хотел сохранить номера ревизий. Когда я загружаю первый проект, номера ревизий верны. Но когда я загружаю второй проект, номер ревизии возобновляется с места окончания первого проекта. Это верно, когда я пытался с svnrdump, а также с svnadmin.

Есть ли способ создать один файл дампа для 2 выбранных проектов?

1 Ответ

1 голос
/ 04 мая 2020

Используйте svnadmin dump с аргументами --include или --pattern для создания одного потока дампа репозитория с сохранением номеров ревизий.

Например, команда должна выглядеть следующим образом:

svnadmin dump MYREPO --include /project1 --include /project2 --file myrepodumpfile.svndump

Вот часть справки svnadmin help dump:

  --exclude ARG            : filter out nodes with given prefix(es) from dump
  --include ARG            : filter out nodes without given prefix(es) from dump
  --pattern                : treat the path prefixes as file glob patterns.
                             Glob special characters are '*' '?' '[]' and '\'.
                             Character '/' is not treated specially, so
                             pattern /*/foo matches paths /a/foo and /a/b/foo.
                                 pattern /*/foo matches paths /a/foo and /a/b/foo.

Кстати, вы можете улучшить производительность svnadmin dump, добавив аргумент -M 256 .:

  -M [--memory-cache-size] ARG : size of the extra in-memory cache in MB used to
                             minimize redundant operations. Default: 16.
                             [used for FSFS repositories only]
...