2016-01-20 25 views
1

我在我的項目中包含一些數據目錄,include_files選項爲build_exe。但是,這些目錄包含.gitignore文件,我不想將其包含在發行版中。如何從cx_Freeze分發中排除gitignore文件

是否有任何方式使用模式來排除任何可能包含的文件?我查看過cx_Freeze文檔,但沒有一個選項似乎可以解決這個問題。

+0

如果您使用的是setup.py腳本,您可以只生成除.gitignore之外的目錄中的所有文件的列表,並將其傳入? –

+0

確實如此。函數'glob.glob'甚至會排除默認以點開頭的文件。謝謝! –

回答

1

解決方案(如Thomas K所建議的)是使用glob模塊來生成要包含的文件的隱式列表。

from glob import glob 
sql_files = glob('../sql/*/*') # No files in ../sql/ root 
doc_files = glob('../doc/*') + glob('../doc/*/*') 
buildOptions = dict(include_files=list(zip(sql_files, sql_files))\ 
            + list(zip(doc_files, doc_files))) 
相關問題