d:id:torin:20090901 先日の実に素敵な経験とその後の地獄のような修復作業を踏まえ、subversionリポジトリのバックアップについて考察・検討してみた。 結論 svnsyncでバックアップを行う。 ただし、別スクリプトを追加することによるメンテが必要。 解説 リポジトリ破損の再構築に伴い、破損の詳細について調べてみた。 結果、以下二パターンの破損が確認出来た。 1.データ領域の破損 リポジトリ内の各ファイルの実データが破損した状態。 破損したファイルの実データを取得するコマンド(update/export/checkput等)および対象ファイルへの変更のcommitはエラーとなる。 対応策 dumpや該当リビジョンの取得でエラーとなるため、dumpを伴うバックアップ手法やsvnsyncであれば検出が可能。 また、リポジトリ自体に足してsvnadmin verifyを実行