ホーム > 未分類 > Subversionで無かったことにする

Subversionで無かったことにする

このサイト上で公開しているTracにテストでPHPのマニュアルをコミットしたら、ファイル数がとても多くて(9千件以上!!)、タイムラインやリポジトリブラウザの表示の際に異常にCPU負荷が高くなることに気がついた。

とりあえず、リポジトリを削除したのだが、このTrac+SVNはほんとうに素晴らしくて削除済みのアイテムもちゃんと表示してくれたりする。(じゃなかったら使う意味が半減ですが。。。)

どうしようかとおもったら、特定のファイルやディレクトリに対する履歴を完全に削除する方法があった。

svnadmin dump /home/svn/repos | svndumpfilter exclude /jogai > dump.svn
rm -fr /home/svn/repos/*
svnadmin create /home/svn/repos/
svnadmin load /home/svn/repos/ < dump.svn
trac-admin /home/svn/trac resynv

最後の行のtrac-admin….は、この作業結果をtracに反映するおまじないです。

カテゴリー: 未分類 タグ:
  1. コメントはまだありません。
  1. トラックバックはまだありません。