Ich muss einen großen und tiefen Verzeichnisbaum mit Tausenden von Dateien auf verschiedenen Ebenen des Baums zippen.
Das Problem ist, dass der gesamte Baum unter der Versionskontrolle von SVN steht. SVN hat seine versteckten Metadaten ".svn" Verzeichnisse in jedem Verzeichnis, was die Größe des resultierenden ZIP um mehr als 100% aufbläht (was inakzeptabel ist, da das resultierende Archiv für die Online-Verteilung gedacht ist).
Derzeit verwende ich dies:
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
...wobei die Anzahl der * Ebenen dem maximalen theoretischen Wert des Baumes entspricht. Und all dies wird für jede Erweiterung wiederholt, die im Baum vorkommen kann. Das funktioniert - es baut das Archiv genau so auf, wie es sollte, aber es dauert viel zu lange (ein paar Minuten), da der gesamte Baum viele Male durchlaufen werden muss.
Und ich möchte es schneller machen, da ich dies für jede Debug-Sitzung wiederholen muss.
Gibt es eine effizientere Methode, um die "echten" Dateien im Verzeichnisbaum auszuwählen?
Danke für jede Hilfe!