3

私は Mercurial でより多くのブランチを作成しようとしており、ブックマークを使用することにしました。この特定のリポジトリは、mercurial リポジトリだけでなく、hg-git を介して git リポジトリにもプッシュします。

track.currentブックマーク構成で使用しています。とにかく、私はブックマークを作成し、いくつかのコミットを行いました

hg bookmark feature
hg update feature
hg commit ... 

そして、フィーチャー ブランチをマスター ブランチにマージし直しました。

hg update master
hg merge feature

ただし、この時点で次のようになります。

abort: nothing to merge
(use 'hg update' or check 'hg heads')

masterhg bookmarksと feature が実際に異なるリビジョンを指していることがわかります。

このメッセージが表示される理由がわかりません。とにかく押し込むのも間違いでした。ブックマークをプッシュしなかったので、Mercurial リポジトリは正常に見えます。しかし、hg-git はその使用法に気づき、私の git リポジトリにブランチを作成しました。そのため、2 つのリポジトリ間で、この非常に奇妙で一貫性のないソース ツリーが作成されました。どうすればそれを修正できますか?また、今後これを適切に行うにはどうすればよいですか?

4

2 に答える 2

2

Mercurial でブックマークを作成しても、実際には新しいヘッド (またはブランチ) は作成されず、リビジョンにラベルが付けられます (その後、アクティブな間にコミットすると自動更新されます)。2 つのブックマークにコミットするまで、実際には新しいヘッドは取得されません (したがって、マージする必要があります)。これは読むのに役立つかもしれません。また、この回答には適切な説明があります。

于 2013-02-21T05:26:36.633 に答える