Warum die große Diskrepanz zwischen zwei ähnlichen ZIP-Dateien?

505
twpc

Ich verwende WinZip, um ganze Codeverzeichnisse zu komprimieren und an einen anderen Programmierer zu senden. Er nimmt Änderungen vor und schickt mir die Codeverzeichnisse zurück.

Ich ignoriere die Tatsache, dass dies kein guter Weg ist, um den Code sauber zu halten, wenn wir beide daran arbeiten, und ich stelle fest, dass seine ZIP-Dateien viel kleiner sind als meine, mit im Wesentlichen den gleichen Daten (Minenbereich um 36.000 KB, seine 2.000) KB). Ich glaube, er verwendet auch WinZip.

Was ist hier los und wie kann ich meine "komprimierter" machen?

1
Warum verwenden Sie WinZip, wenn Sie die ZIP-Dateien in Windows integrieren können? Rich Bradshaw vor 14 Jahren 0
* Die Tatsache zu ignorieren, dass dies kein guter Weg ist, den Code sauber zu halten, wenn wir beide daran arbeiten * - und ein Albtraum ist, wenn Sie sehen möchten, was sich geändert hat, oder (teilweise) auf eine vorherige Version zurückgreifen möchten , auch wenn nur eine Person daran arbeitet ...? (Ich weiß, Sie * wissen * es ist alles andere als ideal, aber es gibt [so] (http://stackoverflow.com/questions/297153/can-you-recommend-a-svn-closed-source-project-hosting- Site) [viele] (http://stackoverflow.com/questions/59791/free-online-private-svn-repositories) kostenlose Repositories, die das Leben so viel einfacher machen ...) Arjan vor 14 Jahren 2

3 Antworten auf die Frage

0
ChrisF

Wenn Sie beide WinZip verwenden, sollten die Dateien dieselbe Größe haben (vorausgesetzt, Sie verwenden denselben Kompressionsalgorithmus).

Die einzige andere Sache, an die ich denken kann, ist, dass Sie ihm alles senden - Quelldateien, Zwischendateien, Binaries, Bilder usw. - und er sendet Ihnen nur den Code. Die Chancen bestehen darin, dass Sie etwas hinzufügen, das nicht gut komprimiert werden kann, was die Größe Ihres Archivs erhöht.

Öffnen Sie die beiden Archive nebeneinander und vergleichen Sie deren Inhalt. Sehen Sie, ob eine (Ihre) mehr Dateien enthält als die andere (seine).

Sie sagen nicht, welche Sprache Sie verwenden, aber wenn Sie C ++ als Beispiel annehmen, fügen Sie einfach * .cpp und * .h (oder * .hpp, je nach Compiler) zum Archiv hinzu.

0
S.gfx

Stellen Sie im Winzip-Dialog die Einstellung "Maximale Komprimierung" oder "Beste Komprimierung" ein. Oder verwenden Sie einen besseren Algorithmus, dies ist mit einem Kompressor wie 7zip im 7zip-Format möglich. Obwohl der Gewinn für das übliche Zeug oft nicht wert ist. LZMA ist ein großartiger Algorithmus für die Komprimierung, aber nicht in jeder Software.

Achtung: EXE-Dateien werden nicht richtig komprimiert (prüfen Sie, ob Sie Exes in einem Ordner lassen und nicht). Es gibt spezielle Exe-Kompressoren. Es hängt alles davon ab, wie viel Sie wirklich brauchen, um leichtere Pakete herzustellen, im Verhältnis zu Zeit und Aufwand.

Winzip Standard alles oder Winrar ist auf jeden Fall eine gute Möglichkeit, um sicherzustellen, dass das Ding ohne Probs ankommt. Oft können Leute bestimmte Dateien nicht öffnen, wenn sie auf bestimmte Weise komprimiert sind. Ich arbeite mit einem Freund von mir zusammen, und da wir nur zusammenarbeiten wollen, verwenden wir 7zip, das 7z-Format und die höchsten Kompressionseinstellungen.

0
leonbloy

Könnte auch mit der Komprimierung von Komprimierung und Komprimierung zusammenhängen. Dies kann einen erheblichen Unterschied bewirken, wenn viele kleine Dateien vorhanden sind.

Wenn Ihr Freund beispielsweise ein Format wie tgz (tar + gzip) (oder 7z- oder winrar- Programme mit fester Komprimierungsoption) verwendet, packt er implizit zuerst alle kleinen Dateien als eine einzige große Datei und komprimiert dann alles als ganze. Stattdessen komprimiert Winzip zuerst jede Datei und packt sie anschließend in eine einzige ZIP-Datei.