2

いくつかのプロジェクトを含むSubversionリポジトリがあります。これらのプロジェクトの1つ以上を「切り取り」、理想的には完全に忠実に(つまり、すべてのバージョン履歴をそのままにして)独自のリポジトリに移動したいと思います。

これも可能ですか?もしそうなら、テクニックは何ですか?

編集/明確化:ブランチとタグについて知っています。それは私が求めていることではありません。既存のリポジトリを取得して、場合によっては異なる物理メディア上のいくつかの小さなリポジトリに分割したいと思います。

4

1 に答える 1

2

まず、SVN リポジトリの最新のダンプを取得します。

svnadmin dump repo/

次に、次のようなものを使用してリポジトリをフィルタリングします

svndumpfilter include --drop-empty-revs --renumber-revs trunk/myProj1 trunk/myProj2

次に、新しいリポジトリを作成し、トランク、タグ、およびブランチのディレクトリを追加します (この後の手順は、これらの 3 つのディレクトリがないと失敗します)。

svnadmin create newRepo
svn co file:///tmp/newRepo newRepo-checkout
svn mkdir newRepo-checkout/trunk/ newRepo-checkout/branches/ newRepo-checkout/tags
svn commit -m "Core directory structures created" newRepo-checkout/

これら 3 つのディレクトリが配置されると、ダンプをロードできるようになります。

svnadmin load newRepo

読み込みが完了したら、新しいリポジトリの使用を開始できます。

いくつかのチュートリアル リンク:

http://grumbel.blogspot.com/2008/09/splitting-svn-repository.html
http://2tbsp.com/node/88

于 2011-11-09T22:56:38.157 に答える