8

Gitリポジトリをフォークし、Mercurialに変換し、完了したら変更を元のGitリポジトリに戻したいと思います。私は、その便利さよりも、安全で安定した変換プロセスに関心があります。私はpull定期的にGitからMercurialに変更を加えますが、変更を元に戻すことはめったにありません。

プロジェクトに対して報告されたバグの多くが何年もの間答えられていないので、私はhg-gitを使うことに抵抗があります。hg convertを使用するよりも、GitをHgに変換する方が安全だと思いhg-gitます。

私の質問は、リポジトリをすでにMercurialに変換していくつかの変更を加えたとしたら、これらの変更を公式リポジトリに戻すにはどうすればよいですか?履歴情報を失うことなく、変更を公式のGitリポジトリに戻したい(つまり、複数の変更セットを1つにまとめたくない)。

これを行うための最も簡単で安全な方法は何ですか?

4

1 に答える 1

8

Mercurialコミットをパッチとしてエクスポートしてみてください。

hg export --git -r 1 >patch.diff

この.diffファイルはGitによって認識される必要があり、。を使用してgitリポジトリに追加できますgit apply
(これは、「MercurialリポジトリをGitに変換する」で提案されました。ここでは、より最新のスクリプトhg-fast-exportについても言及されています)

--gitオプションはhg export、git拡張diff形式でdiffを生成することを確認します。詳細については、を参照hg help diffsしてください。

于 2012-06-26T15:55:45.720 に答える