86

私はマージを間違えました。元に戻してからもう一度やり直したいのですが。
コミットされる前にマージを元に戻す方法はありますか?

hg revert私が望むことをしません、それはファイルのテキストを元に戻すだけです。Mercurialは、マージの2回目の試行を中止し、元のマージがまだコミットされていないことを訴えます。

hg mergeコマンドの後、コミットされる前にマージを元に戻す方法はありますか?

4

3 に答える 3

108

hg update -C <one of the two merge changesets>

于 2010-10-20T18:28:03.953 に答える
41

実行後、実行hg mergehg commitに、作業コピーには2つの親があります。最初の親はマージ前に更新した変更セットであり、2番目の親はマージする変更セットです。hg mergeMercurialは、作業コピーに2人の親がいる限り、再度実行することはできません。

続行する方法には2つのオプションがあります。

  1. マージを中止して開始した場所に戻りたい場合は、

    hg update -C .
    

    これにより、作業コピーが最初の親と一致するように更新され.ます。常に、作業コピーの最初の親を示します。

  2. 一部のファイルを再マージする場合は、

    hg resolve fileA fileB
    

    これにより、実行したときと同じようにマージツールが再起動しますhg merge。マージツールが正しく構成されていないことが-時にわかった場合は、resolveコマンドが適してhg mergeいます。構成を修正して実行しますhg resolve --allhg resolveマージに満足するまで、何度でも実行できます。

于 2010-10-25T06:07:56.430 に答える
0

今日はありhg merge --abortます。を参照してくださいhg help merge

于 2021-12-22T15:31:41.740 に答える