壮絶に日付がずれていたので
昨日あたりに玄箱で鯖設置して運用しだしたんですけど、ふと見るとかなり昔を指してるのに気が付きました。svn単体だったらまだいいんですけど時計を直したらtracのtimelineが見えなくなっちゃったんでレスキュー。
while (<>) { if ( /^2007/ ) { s/2007-07-(\d+)T/sprintf '2007-09-%02dT', $1 - 5/e; } print $_; }
約二ヶ月ずれてたのね。適当に置き換えるスクリプト@dt.pl。名前はDateTimeを使おうと思った名残 :-)
sudo svnadmin dump /var/svn/socks 2>/dev/null | perl dt.pl > dumped.txt
とりあえずdumped.txtにはいてみる。
あとは
svnadmin create repos svnadmin load repos < dumped.txt sudo mv repos /var/svn cd /var/svn sudo chown www-data:www-data repos -R
dump&loadしたら権限も忘れずに。
で、完了。ちゃんと元に戻った。あとはtracで
sudo trac-admin /var/trac/repos resync
resyncすればtracのデータとも調合が取れる。よしよし。
svnadmin dumpで吐いてフィルタしてsvnadmin loadで読めば日付は直せそうですね。コミットメッセージとかはLengthとはあるみたいなんでめんどくさそうですけど。まぁどっちにしろIllegalだな、これ。時計はちゃんと合わせましょうね、と。