Я пытаюсь получить svn-дамп содержимого моего SVN-репозитория на ассемблере . Я следовал их инструкциям и загрузил файл tar.gz, который генерирует экспорт.

Я хотел бы запустить svndumpfilter на дампе, прежде чем импортировать его в другое хранилище, но все, что я делаю, вызывает некоторые ошибки;

  • если я запускаю tar xzf для файла, я получаю все содержимое (каталог, а не простой файл) - если я затем помещаю это содержимое в каталог и запускаю svndumpfilter, я получаю сообщение об ошибке svndumpfilter: E000021: Can't read stream: Is a directory
  • если я распаковываю (но не распаковываю) файл gz, а затем пытаюсь запустить svndumpfilter для файла tar, я получаю svndumpfilter: E140001: Malformed dumpfile header 'breakout.ini'
  • если я пытаюсь загрузить дамп напрямую, используя svnrdump dump http://subversion.assembla.com/svn/<repo_name>/ то получаю ошибку:

    * Dumped revision 6. svnrdump: E175002: REPORT of  
    'http://subversion.assembla.com/svn/<repo_name>': Could not read response body: Connection reset by peer (http://subversion.assembla.com)
    

    это последовательно происходит после сброшенной версии 6.

  • Если я пытаюсь импортировать несжатый файл в локальный репозиторий, я получаю

    $ sudo svnadmin create my_repo
    $ sudo svnadmin load --force-uuid my_repo < repo_download.tar.gz
    svnadmin: E140001: Malformed dumpfile header '?\8'
    

Локально я использую SVN версии 1.7.4 в Ubuntu. Я не знаю, какую версию на ассембле.

Есть ли что-то очевидное, что я упускаю, или они путают вещи, собирая содержимое, которое должно быть плоским файлом дампа?

Запуск дерева по несжатой загрузке дает:

tree -d
.
âââ tmp
    âââ db
    â   âââ node-origins
    â   âââ revprops
    â   â   âââ 0
    â   âââ revs
    â   â   âââ 0
    â   âââ transactions
    â   âââ txn-protorevs
    âââ hooks
    â   âââ post-commit.d
    â   âââ post-revprop-change.d
    â   âââ pre-commit.d
    âââ locks

14 directories

1 ответ1

1

Обновить:

Из вашей дополнительной информации получается, что вы загрузили целый " внутренний " SVN-репозиторий. Как обсуждалось в комментариях, попробуйте проверить это с помощью следующей команды:

svn checkout file://$(pwd)/tmp ./checkout

Судя по вашей дополнительной информации, похоже, что вы загрузили не то, что нужно, или служба загрузки не работает в конце.

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

svnadmin create mirror
echo '#!/bin/true' > mirror/hooks/pre-revprop-change
chmod +x mirror/hooks/pre-revprop-change
svnsync init file://$(pwd)/mirror http://subversion.assembla.com/svn/${repo_name}
svnsync sync file://$(pwd)/mirror

К сожалению, вы можете обнаружить, что это происходит также в 6-й редакции, но это стоит того - возможно, проблема в редакции особенно велика?

Если svnsync также отключается, можете ли вы проверить проблемную версию как обычно?

svn checkout -r 6 http://subversion.assembla.com/svn/${repo_name} ./my_repo

ПРИМЕЧАНИЕ: возможно, что с версией 6 все в порядке, и проблема на самом деле с версией 7, так что попробуйте это тоже.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .