12

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 without BOM」または「ANSI」に変換した場合:

' into a number04: Could not convert ' 2

「UCS-2 ビッグ エンディアン」または「UCS-2 リトル エンディアン」に変換する場合:

svnadmin: E140001: Malformed dumpfile header '?\254?\255'

私は文字エンコーディングについて何も知らないので、次にどこに向かうべきかわかりません。または、ダンプまたはレポの問題かもしれませんが、今まで SVN に問題はありませんでした。

4

2 に答える 2

24

この回答は、私の質問に対するユーザー kostix のコメントからのものです。

問題は、PowerShell を使用してダンプ ファイルを作成していたことです。Windows で通常のコマンド プロンプトを使用するように切り替えたところ、問題は解決しました。指摘したように、PowerShell はパイプラインまたはシェル出力ファイルを介して UCS-2 ファイルを自動的に出力しますが、Linux はその文字エンコーディングを好みませんでした。

于 2013-09-18T12:19:42.963 に答える
1

エラー svnadmin: E140001: Malformed dumpfile header '?\FF?\FES' が発生した場合

PowerShell を使用してバックアップを取得した場合、Windows SVN ダンプは Linux SVN では機能しません。Windows でバニラ コマンド プロンプト (デフォルト) を使用することをお勧めします。PowerShell よりも 10 倍速く、ダンプ バックアップを取得できます。

svnadmin ダンプ /repository_name > backup_svn.dump

于 2018-04-27T14:26:15.100 に答える