関連質問: リポジトリトランクを別のブランチに(履歴付きで)移動しています
completeSVNリポジトリを履歴付きでダンプし、次を使用してターゲットリポジトリのユーザー定義の(サブ)ディレクトリにロードできることを知っています。
// in source repo
> svnadmin dump . > mydumpfilename
// in destination repo (backslashes because I'm using Windows)
> svnadmin load . < mydumpfilename --parent-dir some\sub\directory
ただし、これにより、リポジトリ全体がターゲットリポジトリのサブディレクトリにインポートされます。私が欲しいのは、エクスポートする必要があるソースリポジトリのサブディレクトリを定義することです。何かのようなもの svnadmin dump . --source-path old\sub\dir > mydumpfilename
。
どうすればそれを達成できますか? TortoiseSVNがそれを実行できる場合は、そう言ってください;)
解決策:Tim Heniganの回答に感謝します。正しい方法は次のとおりです。
// execute in destination repo
svndumpfilter include source\sub\dir < mydumpfilename | svnadmin load . --parent-dir destination\sub\dir
これが他の人にも役立つことを願っています...
svndumpfilter
と、このセクションの Repository Maintenance を確認してください。
古いリポジトリ全体のダンプファイルを取得したら、svndumpfilter
を使用して必要な部分だけを抽出できます。
TortoiseSVNでこれを行う方法を知りません。
パーティーには少し遅れますが... TortoiseSVNを使用して両方のリポジトリのローカルコピーをプルしている場合、Repo1からディレクトリ(またはファイル)を右クリックして履歴を付けてディレクトリを実際に一方から他方にコピーできます。それをRepo2にドラッグします。マウスを離すと、次のオプションリストが表示されます。
「SVN Export versioned items here」は、履歴とともに(再帰的に)コピーされます。