如何放棄自Mercurial上次提交以來所有存儲庫更改?如何放棄尚未提交的所有Mercurial更改
我不會認爲這是revert
命令,因爲那樣會實際更新工作目錄到最後一個提交。我只想撤消存儲庫中的更改(添加文件,刪除的文件等)。
但是,我是新的Mercurial,所以我可能會錯過一些東西。
如何放棄自Mercurial上次提交以來所有存儲庫更改?如何放棄尚未提交的所有Mercurial更改
我不會認爲這是revert
命令,因爲那樣會實際更新工作目錄到最後一個提交。我只想撤消存儲庫中的更改(添加文件,刪除的文件等)。
但是,我是新的Mercurial,所以我可能會錯過一些東西。
你確實需要revert
。兩個命令revert
和update
是免費的。他們都更新工作目錄中的文件,但update
也更新了父版本(請參閱hg parents
),而revert
則不更新。如果您的父母版本是tip
,這通常是,那麼在這種情況下,可以選擇revert
。
例子:
[email protected] [~/hg/test] % hg stat
? newfile
? output.patch
? this
[email protected] [~/hg/test] % hg add newfile
[email protected] [~/hg/test] % hg stat
A newfile
? output.patch
? this
[email protected] [~/hg/test] % hg revert --all
forgetting newfile
[email protected] [~/hg/test] % hg stat
? newfile
? output.patch
? this
這個前面的問題可能會有所幫助: Mercurial — revert back to old version and continue from there
特別是馬丁的 「小抄」 的答案。
*添加的文件,刪除的文件*不會更改存儲庫。在提交之前,不管存儲庫如何變化。 – SilentGhost 2010-05-05 12:38:23