私はこのシナリオを持っています。まず第一に、はい、私たちはトランクに直接取り組んでおり、それは明日(文字通り)変更されます。
この男はコードをマージし、他のすべてのコードを歩き回りました。1625 REV を取り上げたいと思います。方法はありますか?私は次に来るものを失うことを気にしません、彼は再び仕事をするに値します。
1625 からブランチを作ろうと思っていたのですが、後でデフォルトでマージしたい場合はどうなりますか? 新しいブランチにあるすべてのものをそのまま使用できますか?
私はこのシナリオを持っています。まず第一に、はい、私たちはトランクに直接取り組んでおり、それは明日(文字通り)変更されます。
この男はコードをマージし、他のすべてのコードを歩き回りました。1625 REV を取り上げたいと思います。方法はありますか?私は次に来るものを失うことを気にしません、彼は再び仕事をするに値します。
1625 からブランチを作ろうと思っていたのですが、後でデフォルトでマージしたい場合はどうなりますか? 新しいブランチにあるすべてのものをそのまま使用できますか?
基本的には次のようになります: 良いバージョンをチェックアウトし、他のヘッドをマージし、良いバージョンに戻し、コミットします。
hg up -C <good>
hg merge <bad>
hg revert -r <good> --all
hg resolve -m #if necessary
hg ci -m kill-merge
hg diff -r <good> #should be empty
このレシピを試してください:
repo
しますrepo-clone
。repo-clone
適切なリビジョンに更新します。repo
ヒントのリビジョンに更新します。repo
ます。repo-clone
にコピーしrepo
ます。repo
しhg ci -A -m 'Backout bad merges'
ます。最後のコマンドは、追跡されていないすべてのファイルを追加し、コミットする前に不足しているすべてのファイルを忘れます。このレシピを使用すると、適切なリビジョンとまったく同じ状態の作業ディレクトリが得られます。