2

を使用して SVN リポジトリの一部を移行しようとしていますsvnadmin dump

提供されている svndumpfilter ツールは、エクスポートに含まれていないディレクトリからのコピー/移動/名前変更の依存関係を管理しません。

これらの依存関係を管理できるツールはありますか?

4

3 に答える 3

3

Simon Tatham による svndumpfilter2という Python スクリプトを見つけました。これは単純な依存関係に対処しようとします (ただし、いくつかの制限が見つかりました)。

彼の Subversion への移行とスクリプトの動機に関する記事も確認できます。

于 2008-11-04T10:25:39.447 に答える
0

この問題を取り除くことはできません。ディレクトリ/ファイルをコピーした場合は、両方 (ソースと宛先) を svndumpfilter に含める必要があります。

ただし、いくつかのトリックを実行できます。

リビジョン 0 からではなく、たとえばリビジョン 100 からリポジトリをダンプすると、リビジョン 1 ~ 100 が消えた新しいリポジトリが作成されます。ただし、宛先リポジトリには、リビジョン 100 のソース リポジトリとしてリビジョン 1 のすべてのファイル/フォルダがあります。このようにして、HEAD-リビジョンを失うことなくバージョン管理されたデータを取り除くことができます。

最初のコピーが「フラット」リポジトリになるまで、ソース リポジトリのダンプ/ロードを試みてから、残りのダンプをそこに追加することができます。このようにして、ファイルは既に適切な (宛先) ディレクトリにあるため、面倒なコピー元のリビジョンをスキップできます。

于 2008-11-03T13:34:45.167 に答える
0

依存関係とは、プロパティ svn:external? で指定されたものを意味します。

はいの場合は、svndumpfilter に、プロパティで参照されているパスも渡す必要があると思います。たとえば、プロジェクトがhttp://host/projectあり、svn:external プロパティが に設定されてhttp://host/dependenciesいる場合、次のようなことができます

svndumpfilter include http://host/project http://host/dependencies < total.dump > project.dump
于 2008-11-03T12:36:17.013 に答える