Subversion リポジトリの構造を再構成する方法

Subversion リポジトリに誤った操作をしてしまったり、ディレクトリ構造を「過去から再構成」するには、次のようにする。

 

svnadmin create myrepo2

cd myrepo2

svn mkdir pub

svn mkdir res

svn mkdir dev

svn mkdir dev\tags

svn mkdir dev\trunk

svn mkdir dev\trunk\src

svn mkdir dev\trunk\doc

svn mkdir dev\branches

cd ..

svn commit –m “”

 

r2 から r1477 まで移行する。

svnadmin dump -r 2:1477 --incremental myrepo > src.dump

svnadmin load --force-uuid myrepo2 < src.dump

// r1478 から r1498 まではドロップ

r1499 から HEAD まで移行する。

svnadmin dump -r 1499:head --incremental myrepo > src.dump

svnadmin load --ignore-uuid myrepo2 < src.dump

 

.dump ファイルはバイナリエディタで修正すること。一部の情報はサイズを変化させてはいけないが、パス情報などは変化しても大丈夫な部分にあるようだ。