84

私は 2 つの別々の水銀リポジトリを持っています。この時点で、それらが「1 つになる」ことは理にかなっています。なぜなら、私は 2 つのプロジェクトに同時に取り組みたいからです。

2 つのプロジェクトをそれぞれ新しいリポジトリのサブディレクトリにしたいと考えています。

  1. 2 つのプロジェクトをマージするにはどうすればよいですか?
  2. これは良い考えですか、それとも別々にしておくべきですか?

あるリポジトリから別のリポジトリにプッシュできるようにすべきだと思われます...多分これは本当に簡単ですか?

4

3 に答える 3

69

この方法で 2 つのリポジトリを組み合わせることができました。

  1. hg clone first_repositoryリポジトリの 1 つを複製するために使用します。
  2. hg pull -f other_repository他のリポジトリからコードを取得するために使用します。

-fプルの(強制) フラグが重要です。これは、2 つのリポジトリが同じソースからのものではないという事実を無視することを示しています。

この機能のドキュメントは次のとおりです。

于 2008-08-21T17:23:08.013 に答える
7

hg は1.3 (2009-07-01) からサブレポを持ち始めました。初期のバージョンは不完全で不安定でしたが、今ではかなり使いやすくなっています。

于 2010-09-16T03:49:45.177 に答える
3

プロジェクト間で同じコードを使用していない場合は、プロジェクトを分けておいてください。これらの各プロジェクトの個人用リポジトリをディレクトリごとに設定できます。必要がないのに、すべてのブランチ、マージ、およびコミット コメントを混在させる必要はありません。

編集について:あるリポジトリから別のリポジトリへのプッシュ。コマンドはいつでも使用できますtransplantとはいえ、これは実際には 2 つを組み合わせたいというあなたの願望を脇に置いているので、私の提案を使用すると不快に感じるかもしれません。次に、フォレスト拡張機能などを使用できます。

hg transplant -s REPOSITORY lower_rev:high_rev
于 2008-08-20T15:05:01.037 に答える