Wie überprüft Git, ob eine Zusammenführung benötigt wird?

8

Laut Dokumentation tut git update-index --refresh dies:

  

Betrachtet den aktuellen Index und prüft, ob Zusammenführungen oder Aktualisierungen erforderlich sind, indem er stat () - Informationen überprüft.

Was bedeutet es, dass git "überprüft, ob Zusammenführungen oder Aktualisierungen erforderlich sind"? Behält Git eine willkürliche Flagge, die nach bestimmten Operationen "Mergeme" sagt?

Ich glaube auch, ich verstehe stat ( was ist " Stat-Informationen "in einem Git-Index? ), aber ich sehe nicht, wie Dinge wie die UID help git überhaupt wissen, ob eine Zusammenführung erfolgen muss.

    
Alexander Bird 16.03.2011, 15:26
quelle

1 Antwort

2

Die Beschreibung ist ein wenig irreführend. Dieser Befehl überprüft, ob die Arbeitskopie vom Index abweicht. In diesem Kontext bedeutet eine Zusammenführung, dass Sie git add , git rm oder git checkout verwenden müssen, um den Index und die Arbeitskopie synchron zu halten. Das hat nichts mit git merge zu tun.

Der Index speichert einen Schnappschuss der Arbeitskopie-Datei stat information, um die Erkennung von Änderungen durch den Benutzer zu optimieren. Sie wird jedes Mal aktualisiert, wenn diese Änderungen in den Staging-Bereich eingefügt werden ( git add , git rm ) oder wenn die Änderung der Arbeitskopie verworfen wird ( git checkout , git reset , ...).

    
Sylvain Defresne 16.03.2011, 15:35
quelle

Tags und Links