【Subversion】チェックアウトできない(リポジトリが壊れた?)
現象
Subversionのリポジトリから、あるプロジェクトが正常にチェックアウトできなくなる現象が発生しました。たいていのファイルはチェックアウトできたのですが、いくつかの特定のファイルがチェックアウトできませんでした。
そのとき出ていたエラーはこんなエラーです。いろいろありました。
svn: Error processing command 'mv' in 'C:\workspace\xxxx\xxxx\xxxx' svn: Can't move source to dest
svn: Decompression of svndiff data failed svn: REPORT of '/svn/xxxx/!svn/vcc/default': 500 Internal Server Error (http://svn.example.com/)
リポジトリが壊れるということがまれにあるらしく、特定のリビジョンが取り出せなくなることがあるらしいです。
今回の場合も、あるディレクトリ、あるファイルを特定のリビジョンにupdateしようとするとエラーが発生していました。
対応方法
リポジトリからいったんそのファイルを削除して、新しいファイルとしてコミットしなおすことで、そのプロジェクト全体は正常にチェックアウトできるようになりました。
上記の方法で解決したので、そのリポジトリでは今でも、エラーが発生したのと同じ特定のリビジョンの特定のファイルを取得しようとすると、エラーが発生します。
そのリポジトリはかなり大きいもので、これ以上の復旧は面倒だったので、ここまでの対応としました。
コメント