svn svn://server/
some1
some2
some3
原則として、すべてが1つのデータベースに保存されるため、非常に便利でした。
しかし、問題に直面しました。 リポジトリを複数に分割することが決定された瞬間に、データベースが崩壊し始めた理由は明らかではありません。
そもそも、すべてのブレークポイントがあればそれを見つける必要がありました。
最初のギャップを見つける:
svnadmin dump --incremental -r0:HEAD c:\path\to\repo > test.dmp
私の場合、8600リビジョンのうち、最初のリビジョンがすぐに見つかりました... 2300番目のリビジョン。
次に、さらにポイントを見つけます。
svnadmin dump --incremental -r2301:HEAD c:\path\to\repo > test.dmp
別のものを得た。 3459。
そしてもっと見つけてください。
svnadmin dump --incremental -r3460:HEAD c:\path\to\repo > test.dmp
これ以上エラーは見つかりませんでした。
次に、ライブリビジョンのダンプを作成します。
s
vnadmin dump --incremental -r0:2299 c:\path\to\repo > dump(0-2299).dmp
svnadmin dump --incremental -r2301:3458 c:\path\to\repo > dump(2301-3458).dmp
svnadmin dump --incremental -r3460:HEAD c:\path\to\repo > dump(3460-HEAD).dmp
vnadmin dump --incremental -r0:2299 c:\path\to\repo > dump(0-2299).dmp
svnadmin dump --incremental -r2301:3458 c:\path\to\repo > dump(2301-3458).dmp
svnadmin dump --incremental -r3460:HEAD c:\path\to\repo > dump(3460-HEAD).dmp
現在、リポジトリをプロジェクトに分割しています。
プロジェクト1:
svndumpfilter include /some < dump(0-2299).dmp > some-1.dmp
svndumpfilter include /some < dump(2301-3458).dmp > some-2.dmp
svndumpfilter include /some < dump(2301-3458).dmp > some-3.dmp
プロジェクト2:
svndumpfilter include /some2 < dump(0-2299).dmp > some2-1.dmp
svndumpfilter include /some2 < dump(2301-3458).dmp > some2-2.dmp
svndumpfilter include /some2 < dump(2301-3458).dmp > some2-3.dmp
類推により、3番目も同じです。
次に、最初のプロジェクトのリポジトリを作成します。
svnadmin create c:\path\to\some
ダンプをアンロードします。
svnadmin load c:\path\to\some < some-1.dmp
svnadmin load c:\path\to\some < some-2.dmp
svnadmin load c:\path\to\some < some-3.dmp
次のようなエラー:
1.ファイルは既に存在します
2.逆説的ではないので、ファイルはありません。
最初のケースでは、すべてが単純です。たとえば、「タートル」を使用してリポジトリに移動し、この干渉ファイルを削除します。
2番目のケースでは、ダンプでのスクリーニングを行う必要があります
svndumpfilter exclude /chto/ne/nawlos < some-1.dmp > some-11.dmp
そして、それをリポジトリにアップロードします。
それは基本的にそれです。