What is the difference between hg revert and hg backout?

后端 未结 1 918
一整个雨季
一整个雨季 2021-02-12 13:27

Both hg revert and hg backout revert changes made by a former revision. What is the difference between the two?

相关标签:
1条回答
  • 2021-02-12 14:14

    Given the history of changesets:

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

    hg revert -r B: Stay at current revision, but update the working directory as of revision B. It has the effect of a patch that revokes the changes of C, D and E.

    hg backout -r C: Update the working directory so that it contains the merge of revision C's parent (B) and the current revision, preserving the changes made in between the two revisions (working dir still contains changes of revision D and E). This has the effect of a patch applied on E, undoing the changes of only C.

    You may want to edit some files if not all of C was bad. Remember to do a hg commit in any case:

    A --- B --- C --- D --- E --- F
              [bad]              (*)
    
    0 讨论(0)
提交回复
热议问题