Frage Was bedeutet die Nachricht "Neuschreiben ... (90%)" nach einem Git Commit? [Duplikat]


Diese Frage hat hier bereits eine Antwort:

Wenn git einen Commit durchführt, schreibt er Binärdateien mit etwas Ähnlichem neu rewrite foobar.bin (76%). Was ist das %? Wird der Prozentsatz geändert oder der Prozentsatz aus der älteren Datei beibehalten? Ich weiß, dass git eine binäre Delta für Dateien verwendet, aber ich weiß nur nicht, wie viel von einer Neuschreibung der% darstellt und es scheint nicht auf der Hilfeseite für sein git help commit.

Vielen Dank!


76
2018-06-25 21:07


Ursprung


Antworten:


Es ist ein Maß für den Ähnlichkeitsindex. Der Ähnlichkeitsindex ist der Prozentsatz unveränderter Zeilen. git denkt, dass deine Datei Text ist.


50
2018-06-25 22:18



Ich glaube, Martin hat Recht, diese Zahl ist der Ähnlichkeitsindex. Von dem Git-Diff Manpages:

Der Ähnlichkeitsindex ist der Prozentsatz   von unveränderten Linien und der   Unähnlichkeitsindex ist der Prozentsatz   von geänderten Linien. Es ist abgerundet   Ganzzahl, gefolgt von einem Prozentzeichen.    Der Ähnlichkeitsindexwert von 100% ist   also für zwei gleiche Dateien reserviert,   während 100% Unähnlichkeit bedeutet, dass nein   Zeile aus der alten Datei hat es geschafft   der Neue.

Als ich zum ersten Mal die Nummer sah, dachte ich, dass sich meine Binärdateien dramatisch verändern würden!


19
2017-10-18 14:42



Es wird versucht, CRs und LFs in ein konsistentes Format umzuschreiben. Das heißt, Ihre Binärdatei wird nicht als Binärdatei angezeigt. Um git dazu zu zwingen dies richtig zu machen, setze die folgende Zeile ein .gitattributes:

*.bin -crlf -diff -merge

Von diese Seite das bedeutet:

Alle Dateien mit der Erweiterung [.bin] werden   Wagenrücklauf / Zeilenvorschub nicht haben   Übersetzungen gemacht, werden nicht diffundiert und   Zusammenführungen führen zu Konflikten   die ursprüngliche Datei unberührt lassen.


-4
2018-06-25 21:35