2010-11-24 5 views
1

私の望みは私のフォークを親と最新の状態に保ち、理想的には親の個々のコミットとメッセージを記録することで、フォーク内でフォア・ヒストリーを持ち、Mercurial - 親の変更を個別のコミットとして子のフォークにマージしますか?

基本的に、フォークを開始し、フォークの「開始点」として親のコミット履歴全体を見ると、親のコミット履歴がフォーク内で進行中であり続けることを望みます。散在しています(必要に応じて競合解消あり)。

これは可能ですか?

それができない場合、親のコミットメッセージを新しいマージのコミットメッセージに統合しながら、親の変更を子のフォークに自動的にプルするスクリプトを作成する方法はありますか? (インポートされたコミットからのすべての個々のメッセージは1つの大規模なマージメッセージにまとめられるでしょう)

答えて

1

私が間違っていないならば、mercurialとgitは、歴史のために使われたデータ構造と、少なくともgitであなたが求めるものだけをします。マージコミット(またはHGが呼び出すようなチェンジセット)が実際に親コミット(親プロジェクトのコミットとフォークの最新のコミット)の両方に実際にリンクしていることを確認してください。

マージ後、hgkなどのツリーを確認してください。 http://wiki.genunix.org/wiki/images/3/3f/Screenshot-hgk.png

+0

ビジュアルフローを見ると、実際にマージするために使用したプロセスでは、コードベースに偏差と収束が表示されますが、フォーク内のコミットメッセージはフォーク特有のコミットのみを反映します親からの履歴を保存する。 Bitbucketを使用すると、結合された各リビジョンへのメッセージにリンクがありますが、実際のリビジョンログにはすべてのメッセージがそのまま残っています。 –

+2

バー、ちょうどそれが間違って見ていた。インポートされたコミット履歴は、マージのために新しいコミットメッセージに加えて保持されます*。ありがとう:-) –

+0

さらに、 'hg serve'を使い、http:// localhost:8080/graphを見ることができます –

関連する問題