2010-05-03 60 views

回答

40

核心Mercurial包中沒有相當於git clean

但是,hg purge擴展名可以完成您所追求的功能。

有一個open issue使這個擴展部分的核心包。

+0

擴展wiki頁面顯示「此擴展程序目前正在與Mercurial一起發佈。」。自從它發佈以來,我已經安裝了它。 '不確定_什麼版本有或(將)介紹它。 – 2010-05-03 18:42:45

+0

基於問題跟蹤器,它聽起來像功能被刪除因爲「使用hg purge玩的人可以刪除他們需要的文件」。這個問題最後在2009年5月更新,所以它已經過時了。我肯定會投票把它放回去。 – 2010-05-03 18:50:55

+0

1.1.2運送它,不知道以前的版本。 – 2010-05-03 18:55:59

6

我不使用git進行存儲庫管理。但是,如果我猜測,我認爲hg purge可能是你正在尋找的。

5

如果你是一個基於Linux的系統(或Windows Cygwin的),你可以:

hg status | grep "^?" | xargs rm -rf 

如果這個工程,你可以把這個在你的〜/ .hgrc:只需

[alias] 
clean = !hg status | grep "^?" | xargs rm -rf 

然後運行:

hg clean 

我在Windows上使用cygwin(應該在linux上工作)測試了這個。

+1

這不包括未跟蹤的文件; git clean -fxd。 – FelipeC 2012-10-12 22:30:50

+1

不需要grep。 'clean =!hg status -un0 | xargs -0 rm' – 2013-07-16 21:00:09

+2

'clean =!hg status -un0 | xargs -r0 rm'小調。 – 2013-07-16 21:07:53

10

該擴展程序已包含在mercurial中,但您仍必須激活它。

這就像在你的主目錄(例如WIN 7:C:\Users\«yourusername»\.hgrc)創建.hgrc文件一樣簡單,並添加以下內容到該文件:

[extensions] 
purge = 

(主目錄是~/.hgrc大多數其他桌面操作系統系統(Unix,Gnu/Linux,Mac osx,BSD等)