2011-05-31 74 views

回答

15

如果您還沒有提交,只是使用hg forget fileToForget或使用烏龜刪除文件。

如果你已經犯了,你不介意這些文件成爲歷史的一部分,只要忘記它們並再次提交。

如果您不希望它們成爲存儲庫歷史記錄的一部分,並且如果提交它們是您最後一次操作,則可以嘗試回滾(使用hg rollback或進入Tortoise中的恢復菜單) 。您將不得不忘記文件,然後再次提交

如果您處理的文件太多,可以嘗試通過獲取所有添加文件的列表,忘記它們,修改您的文件夾,然後執行以下操作來自動執行任務:.hgignore再次使用addremove。在PowerShell中的第一步,沒有的

例提交由

hg status --added --no-status | foreach-object {hg forget $_}; 
+7

對於Linux的類型'汞狀態 - 添加了--no-status | xargs hg忘記'。 – 2013-06-07 16:42:36

+0

嘗試從另一個答案'hg忘記「設置:添加()」'這爲我工作。 – 2017-10-31 00:17:12

+0

@DanielSokolowski如果文件名中有空格,則不起作用 - 使用'hg status --added --no-status |而不是xargs -d'\ n'hg forget'。 – Eborbob 2018-01-08 09:59:50

0

要撤消addremove你還不犯簡單地運行:

$ hg revert --all 
+2

假設除了'addremove'的效果之外沒有其他變化。 – Edward 2014-02-18 21:01:33

+0

你是對的 - 我認爲'addremove'是你想撤消的唯一命令。 – Alex 2014-02-19 07:15:06

+2

@Alex @Edward提到這可能很危險。有人使用此命令將失去所有工作區更改。 「忘記」是正確的做法。請參閱@CedricRup的答案 – Medorator 2014-04-10 13:23:55