2

git から mercurial に移行した後 (個人的な好みではありません :)、hg convertgit ブランチをブックマークに変換するという問題に直面しました。ブックマークを名前付き hg ブランチに変換する方法はありますか? それは必要かどうか、そしてその理由は何ですか? ありがとうございました!

4

1 に答える 1

8

Git ブランチと hg ブックマークは基本的に同じもの (単一の変更セットへの参照) であるため、そのように変換されています。ブックマークは git ブランチとほぼ同じように動作します - コミットすると進みます (ブランチを追跡するという概念はありませんが、remotebranches拡張機能を使用して同様の結果を得ることができます)。Mercurial では名前付きブランチをまったく使用しない人が多く、ブックマークや匿名ブランチを使用しています。

Hg の名前付きブランチは大きく異なります。名前は歴史の消えない部分です。git ブランチはブランチの先端にしか名前を付けないため、git ブランチを hg という名前のブランチに (自動的に) 変換することはできません。

今後本当に名前付きブランチを使用したい場合 (私はそれを強くお勧めします - 個人的には、各タスクを個別の名前付きブランチで実行することを好みます)、現在の各ブックマークで同じ名前の名前付きブランチを開始することをお勧めします (その後、ブックマークを削除できます)。

手動で変更セットを新しい名前付きブランチに移植または移植することもできますが、そうすると git 変更セットとの関連付けが削除されます。これは、変換ではなく hg-git を使用している場合に重要です。グラフトhg マージ機能を使用して実装されているため、いくつかの関連付けを保持する場合がありますが。

于 2012-08-08T11:42:51.480 に答える