2011-03-02 228 views
2

我需要壓縮一個大而深的目錄樹,並在樹的各個級別上有數千個文件。批處理文件:如何使*忽略「.svn」目錄

問題是整棵樹在SVN的版本控制下。 SVN在每個目錄中都有隱藏的元數據「.svn」目錄,這將導致ZIP的大小超過100%(這是不可接受的,因爲生成的歸檔旨在用於在線分發)。

目前我使用的是這樣的:

7z -u archive.zip baseDir\*.png 
7z -u archive.zip baseDir\*\*.png 
7z -u archive.zip baseDir\*\*\*.png 
7z -u archive.zip baseDir\*\*\*.png 
7z -u archive.zip baseDir\*\*\*\*.png 

...其中*級別的數量是樹的最大理論值。對於每一個可能出現在樹中的擴展都會重複這一切。這是有效的 - 它完全按照它應該建立的檔案,但它需要很長時間(幾分鐘),因爲整棵樹必須被遍歷多次。

我想讓它更快,因爲我需要在每個調試會話中重複此操作。

是否有更有效的方法來選擇目錄樹中的「真實」文件?

感謝您的幫助!

回答

9

嘗試-xr!.svn

愚蠢的網站將不會承認我的答案,因爲它太簡單了......

+0

謝謝,這個偉大的工程! – 2011-03-07 21:44:40