2

水銀で git revert を使用するのと同じ単純な方法はありますか? どうやら特定のファイルをチェックアウトすることを意味しているようです。コミットを追加する方法( )またはコミットの逆差分を適用する方法( )hg revertに対する明確な答えが見つかりませんでした。git cherry-pickgit revert

しばらく前にプッシュされたデフォルトブランチへのいくつかのコミットを元に戻したいと思っています。前または後で元に戻すのではなく、hg backout または hg revert は正しいコマンドではないようです。

4

2 に答える 2

4

通常、Git-Hg Rosetta Stoneは優れたリソースですが、探しているケースには対応していません。torek が指摘したように、http: //www.wikivs.com/wiki/Git_vs_Mercurialは別のリソースです。

に相当するのgit cherry-pickは ですhg graft

is に相当するものgit revertは確かにhg backout- それが何をするかを何らかの形で誤解しているようです。hg backout以前の単一の変更セットの変更を元に戻す新しい変更セットを作成します。しばらく前の変更セットについて話しているのでhg backout、変更を作業ディレクトリにマージし (hg update -C最初に行う)、手動でコミットする必要があります。

ところでhg revert、別の変更セット (デフォルトでは、作業ディレクトリが最後に更新された変更セット) にある状態の 1 つ以上のファイルをチェックアウトします。これには、インデックスの状態が含まれます。たとえば、ファイルが現在の変更セットで追跡されていない場合、追加された状態に戻されます。

于 2014-01-02T05:26:18.597 に答える
1

http://www.wikivs.com/wiki/Git_vs_Mercurialによると、同等のものはそれぞれおよびですhg grafthg backout

バックアウトがあなたが望むものではないと思うのはなぜですか? 基本的に、古いコミットのリバース パッチを実行します (ただし、ほとんどの場合、自動コミットはしません)。

于 2014-01-02T05:25:18.450 に答える