マージを間違えました。元に戻してからもう一度試してください。
コミットする前にマージを元に戻す方法はありますか?
hg revert
は私が望むことをしません。ファイルのテキストを元に戻すだけです。 Mercurialは、2回目のマージ試行を中止し、元のマージがまだコミットされていないことを訴えます。
hg merge
コマンドの後、コミットする前にマージを取り消す方法はありますか?
hg update -C <one of the two merge changesets>
hg merge
を実行した後、hg commit
の前に、作業コピーには2つの親があります。最初の親はマージ前に更新したチェンジセットで、2番目の親はマージするチェンジセットです。作業コピーに2つの親がある限り、Mercurialはhg merge
を再度許可しません。
続行方法には2つのオプションがあります。
マージを中止して、開始した場所に戻りたい場合は、
hg update -C .
これにより、最初の親に一致するように作業コピーが更新されます。.
は常に作業コピーの最初の親を示します。
re-mergeいくつかのファイルにしたい場合
hg resolve fileA fileB
これは、hg merge
を実行したときと同じように、マージツールを再起動します。 resolveコマンドは、hg merge
-時にマージツールの設定が不適切であることがわかった場合に役立ちます。設定を修正し、hg resolve --all
を実行します。マージに満足するまで、hg resolve
を何度でも実行できます。