状況は次のとおりです。開発者Fooは、svnリポジトリからhgリポジトリを作成しました。Fooのhgリポジトリは、svnのトランクの浅いクローンにすぎませんでした(svnブランチ、タグなどはなく、履歴は不完全でした[約100のチェンジセット])。Developer Barも同じことをしましたが、履歴、ブランチ、タグなど全体を含むsvnリポジトリ全体のクローンを作成しました。FooとBarはどちらも、リポジトリでブランチ開発を行っています。
両方のリポジトリに共通のSVN祖先がありますが、各hgリポジトリには異なるバージョン番号があります。Fooの変更を共通の祖先からBarのリポジトリに戻したいと思います。これが私が探しているものの図です:
Fooのレポ:
C'-D'-E-F---G
\ /
H-I
バーのレポ:
...A-B-C-D-J-K---L
\ /
M-N
C、C'とD、D'の内容は同じですが、バージョン番号とコメントが異なります。
目標:
...A-B-C-D--E-F---G
\ \ /
\ H-I
\
J-K---L
\ /
M-N
これを実現する方法についてのアイデアが不足しています。--splicemap splice.map [SPlice.mapファイルにEDが含まれています]を変換してみました(何もしませんでした)。Clone -fは、すべてを1つのリポジトリにまとめることができましたが、それらは独立したツリーのようです。clone -fの後、rebase --source E --dest D --detachを試しましたが、クラッシュしました:(
アイデア?
履歴を変更すると、リポジトリのクローンが無効になることは承知しています。この場合、これは問題ではありません。この作業の結果から、すべてのユーザーが再クローンを作成します。