20

との両方hg reverthg backout、以前のリビジョンによって加えられた変更を元に戻します。2つの違いは何ですか?

4

1 に答える 1

38

変更セットの履歴を考えると:

A --- B --- C --- D --- E
          [bad]        (*)

hg revert -r B: 現在のリビジョンのままにしますが、リビジョンの作業ディレクトリを更新しBます。CDおよびの変更を取り消すパッチの効果がありEます。

hg backout -r C :リビジョン C の( ) と現在のリビジョンのマージが含まれるように作業ディレクトリを更新し、2 つのリビジョン間で行われた変更を保持します (作業ディレクトリにはリビジョンとの変更が含まれています)。これは、 に適用されたパッチの効果があり、の変更のみを元に戻します。BDEEC

Cすべてが悪いわけではない場合は、いくつかのファイルを編集することをお勧めします。hg commitいずれにせよ、忘れずに実行してください。

A --- B --- C --- D --- E --- F
          [bad]              (*)
于 2012-12-07T12:23:35.480 に答える