Неправильный заголовок файла дампа при переносе хранилища из Windows в Linux (проблема с кодировкой?)
Я перемещаю SVN-репозиторий с компьютера с Windows (Windows 7) на компьютер с Linux (Ubuntu 13). Я сбрасываю репо на Windows с svnadmin dump
и скопируйте файлы на компьютер с Linux. Сейчас я бегу
svnadmin load dest-folder < dumpfile
И терминал отвечает
'vnadmin: E140001: Malformed dumpfile header 'SVN-fs-dump-format-version: 2
Я подозреваю, что есть проблема с моей кодировкой символов (Windows против Unix), основанной на том факте, что одинарная кавычка идет от конца строки, где это должно быть, к началу. Но я попытался преобразовать кодировку символов в Notepad++, и я получаю только разные ошибки.
Вышеуказанная ошибка появляется, когда я кодирую в UTF-8.
При преобразовании в "UTF-8 без спецификации" или "ANSI":
' into a number04: Could not convert ' 2
При преобразовании в "UCS-2 Big Endian" или "UCS-2 Little Endian":
svnadmin: E140001: Malformed dumpfile header '?\254?\255'
Я ничего не знаю о кодировке символов, поэтому не знаю, куда обратиться. Или, возможно, это проблема с моим дампом или репо, но у меня до сих пор не было проблем с SVN.
2 ответа
Этот ответ пришел из комментариев пользователя kostix на мой вопрос.
Проблема заключалась в том, что я использовал PowerShell для создания файла дампа. Когда я переключился на использование командной строки vanilla в Windows, проблема была решена. Как уже указывалось, PowerShell автоматически выводит файлы UCS-2 через конвейеры или файлы вывода оболочки, и Linux не нравится эта кодировка символов.
Если вы получаете сообщение об ошибке svnadmin: E140001: Неверно сформированный заголовок файла дампа '?\FF?\FES'
Дамп Windows SVN не работает в Linux SVN, если вы делали резервное копирование с помощью PowerShell, я бы порекомендовал использовать в командной строке vanilla (по умолчанию). Он также будет в 10 раз быстрее, чем PowerShell, для создания резервной копии дампа.
дамп svnadmin / имя_хранилища> backup_svn.dump