旧リポジトリをダンプするときにフィルタを通す。svndumpfilter の exclude コマンドで、除外ディレクトリを指定する。複数のディレクトリを指定する場合はスペースで区切る。--renumber-revs は、リビジョン番号に欠番をださずに詰めるオプション。
$ svnadmin dump /path/to/repository | svndumpfilter --renumber-revs exclude dir1 dir2/foo/bar dir2/foo/boo dir3/hahaha > repository.dump
新しいリポジトリを作成して、フィルタ済みの旧リポジトリをロードする。
$ svnadmin create /path/to/newrepository $ svnadmin load /path/to/newrepository < repository.dump
指定したパスを除くだけで、過去の特定のリビジョンにおける特定のパスを除けるわけではない。コマンドとして指定できるのは include と exclude。過去にリポジトリ内でファイルを移動している場合は、svndumpfilter で取り除くのが難しい場合もある。
サブコマンド include 残すパスを指定する。 exclude 取り除くパスを指定する。 オプション --drop-empty-revs 空のリビジョンを作成しない。 --renumber-revs 空のリビジョンを詰める。 --preserve-revprops 空のリビジョンを残す場合に、ログメッセージなども残す。
