分割Subversionリポジトリを複数のMercurialリポジトリ?
-
25-09-2019 - |
質問
いまからの移行作業SubversionをMercurialとして行われ、バンプのSVN->Hg変換す。現在、当社のシングルSVNレポ保コードのためのカップルで異なる"プロジェクト"、そして分割しの移動です。当社のSVNレポ-レートとして開催され:
.
|-- proj1
| |-- branches
| |-- tags
| `-- trunk
`-- proj2
|-- branches
|-- tags
`-- trunk
といだ proj1
や proj2
自Hg repos.いろい歴史を持つ固有の proj1
表示され proj2
'sログです。今、時 hg convert
なに変換するだけで読み込みしているため、すべてのファイルかdumblyないものを区別支店からばかりである。
何のプロセスフィルタリングによるディレクトリを認識しSVNの各支店 hg convert
?
解決
私はそれが、今 ConvertExtensionのwikiページのおかげで作業持っている!
私はRy4anの方法を試してみましたが、それは分割のすべて前の中間のMercurialリポジトリに最初に変換するために、SVNのレポを持つことのマイナス面に付属し、2つのプロジェクトごとがあるので、その枝、幹、タグが認識されていませんでした自分の枝、幹、タグ付きます。
私は、手動で枝を指定することトランクを見つけ、タグディレクトリが一度にSVNからMercurialの1つのプロジェクトを変換するための素晴らしい仕事ます:
hg \
--config convert.svn.trunk=proj1/trunk \
--config convert.svn.branches=proj1/branches \
--config convert.svn.tags=proj1/tags \
convert --authors authors.txt original-svn-dir hg-proj1
これは同時にSVNの枝を認識ケア、タグ、およびのみproj1
改正のためのトランクとのフィルタがかかります。その後、私はちょうどproj2
のためにそれを繰り返します。
他のヒント
これを解決するための別の方法は、SVNマニュアルに記載されているプロジェクトごとに新しいSVNリポジトリへのsvnレポを分割するsvnadminはダンプとかけませんを使用することです。 リポジトリの歴史をフィルタリングすることで分割リポジトリ
これは簡単に変換で延しているのか。ここでの手順:
- い
hg convert SVNREPO all-in-one-mercurial-repo
からsvnにmercurialも - な複数の
hg convert --filemap projectfilemap.txt all-in-one-mercurial-repo project-repo
コマンドを--ひとつのプロジェクト
そのfilemapsてい線のように:
exclude proj1
rename proj2 .
このfilemap時に用いる抽出プロジェクトつのレポ-レートから一mercurial呼ぶ。する必要があるリストの各ファイルにマップいと思うディレクトリは大丈夫です。
こういうのが私の答えはほとんど同じことをや貼り付け例、ときだけです。