2010-10-09 54 views
7

我在skip_files的頂部添加了一行以使應用引擎部署跳過所有以.hg開頭的文件,如.hgignore文件和.hg目錄。這會忽略整個.hg目錄及其所有文件和子目錄嗎?Google App Engine App.yaml config用於忽略文件以忽略Mercurial文件

skip_files: 
- ^(.*/)?\.hg*$ 
- ^(.*/)?app\.yaml 
- ^(.*/)?app\.yml 
- ^(.*/)?index\.yaml 
- ^(.*/)?index\.yml 
- ^(.*/)?#.*# 
- ^(.*/)?.*~ 
- ^(.*/)?.*\.py[co] 
- ^(.*/)?.*/RCS/.* 
- ^(.*/)?\..* 

回答

20

通過default UNIX風格隱藏的文件和文件夾被跳過。換句話說,任何以點(。)開頭的文件都已被跳過。如果最後沒有缺失*(我假設\ s實際上在那裏),那麼這就是列表中最後一行的內容。

您的建議:^(.*/)?.hg$不太對。要匹配以.hg開頭的任何文件,您需要^(.*/)?\.hg.*

您應該閱讀約regular expressions

編輯:從appcfg.py更新-v中添加轉儲。

Scanning files on local disk. 
2010-10-10 17:14:07,244 INFO appcfg.py:1693 Ignoring directory '.hg': Directory matches ignore regex. 
2010-10-10 17:14:07,244 INFO appcfg.py:1686 Ignoring file '.hgignore': File matches ignore regex. 
+0

Mercurial也有一個名爲.hg的文件夾我的正則表達式希望能夠捕獲.hgignore文件和.hg目錄及其所有文件。例如,在.hg文件夾中名爲undo.branch的文件實際上稱爲.hg \ undo.branch,它將與我的表達式匹配。換句話說:不得將任何*起始* .hg文件上傳到Google。 – user416109 2010-10-10 07:25:48

+0

應用引擎看到.hg \ undo.branch還是看到了undo.branch?它傳遞給正則表達式子程序是什麼? – user416109 2010-10-10 07:28:12

+0

您的建議模式將匹配以「hg」結尾的內容。它會查看路徑,所以它會看到'.hg/undo.branch'。我建議的正則表達式應該能夠捕捉以'.hg'開頭,然後是零個或多個字符的任何東西。但是,同樣,默認的跳過文件模式應該跳過以句點開頭的任何內容。 – 2010-10-10 18:16:44