私は転覆から水銀の断片に移行してきましたが、これにより少し混乱が生じました。最初に古いSVNサーバー(1.4より前)を持っていたので、ここで何が起こったのですか。
- HgSubversion はトランクから完全な履歴を取得したくなかったので、浅い変換を行いました。
- 私の同僚は SVN への最後のコミットを行い、私はそれらを Hg にプルしました。
- Hgに移動し、プッシュを開始しました
- 安全のために、私の同僚の 1 人が SVN にさらにコミットしました。
- SVNサーバーのアップグレードを管理し、新しいSVNへの完全なレポを取得しました。
- HgSubversion は完全な履歴を正常に取得しました - いくつかの余分な/重複したコミットを含みます。
ここで、浅いmercurialリポジトリのコミットを完全な履歴に「移植」したいと思います。リポジトリはコンテンツでは関連していますが、mercurialハッシュでは関連がありません。変更を移行するための最良の方法は何ですか? 最終的には、誰もができるようになるはずです:
- 完全な履歴で Hg リポジトリを切り替えて作業を続けるには
- サービス ユーザーとして、適切な squash/rebased 変更セットの Hg リポジトリから SVN への自動プッシュを行います。
次のシナリオの具体例が欲しいです。
- ステップ 2 の最後の水銀ハッシュ - A
- ステップ 3 をプッシュした後の現在の水銀ハッシュ - B
- アップグレードされた SVN からプルした後の最後のコミットのハッシュ - C
- 完全な SVN 履歴プル後のステップ 2 コミットのハッシュ - D
私はアスキー アートがあまり得意ではないので、ボーナス ポイントとして 1 つ追加してください。