14
hg revert
和hg backout
恢復以前版本所做的更改。兩者有什麼區別?hg revert和hg backout有什麼不同?
hg revert
和hg backout
恢復以前版本所做的更改。兩者有什麼區別?hg revert和hg backout有什麼不同?
考慮變更的歷史:
A --- B --- C --- D --- E
[bad] (*)
hg revert -r B
:留在當前的修訂,但更新工作目錄 爲修訂版B
的。它具有補丁的效果,該補丁撤銷C
,D
和E
的變化 。
hg backout -r C
:更新工作目錄,使其包含合併 C版本的父(B
)和當前修訂,保留了變化 在兩個版本之間進行(工作目錄仍包含的變化 修訂版D
和E
)。這具有應用於E
, 上的修補程序的效果,僅取消了C
的更改。
如果不是所有的C
都不好,你可能要編輯一些文件。記得做 一個hg commit
在任何情況下:
A --- B --- C --- D --- E --- F
[bad] (*)
回答我的問題,因爲我無法找到任何網頁上清楚。希望這可以幫助其他人節省一些時間。 – Iodnas
好的答案!我的「[作弊表]」(http://stackoverflow.com/a/2565996/110204)解釋了「hg update」和「hg revert」之間的區別,這也可能有幫助。 –
你爲什麼不接受你的回答? – PhoneixS