2011-10-12 69 views
0

這是我的文件/文件夾結構:汞柱正則表達式語法無法正常運行

代碼/ .hg

代碼/ .hgignore

代碼/現金/ readme.txt文件

代碼/ CASH/bin/FTI/abc.dll

我試圖在我的.hgignore文件中創建一個正則表達式,它將忽略除了/ bin/FTI文件夾中的所有內容之外的所有CASH文件夾下的所有內容。

這裏是我的.hgignore文件不起作用:

syntax: regexp 
CASH/(?!bin/FTI/).* 

這結束了無視現金夾中的一切,包括我想不能忽視/bin/abc.dll文件。

任何想法?

回答

0

glob在這種情況下可能更容易。如果使用正則表達式,怎麼樣:

syntax: regexp 
CASH/(?!bin) 
CASH/bin/(?!FTI) 
1

這不正是你要找的答案,但原因水銀沒有體面的語法「一切,除了」在.hgignore文件(零寬度看提前正則表達式不是該計劃)是因爲hg add覆蓋.hgignore

你可以有一個.hgignore文件,只是這個在它:

^CASH/ 

,然後做了一次hg add CASH/bin/FTI/**,你會跟蹤所有未來的變化給所有已經在該目錄中存在的文件。

當然,如果一個新的二進制文件出現在CASH/bin/FTI中,您必須記住添加它,但對已經添加的文件的更改不需要任何額外的操作。除非具有新名稱的二進制文件經常出現,否則這是更常見的設置。