Unterschied zwischen 'git rm --cached' und 'git update-index --assume-unverändert'?

9

Ich verstehe den Unterschied zwischen git rm --cached und git update-index --assume-unchanged nicht.

Ich bin mir bewusst, dass git rm --cached <file> eine Datei aus dem Staging-Bereich entfernt.

Und ich weiß, dass git update-index --assume-unchanged <file> dies auch tut.

Ich habe auch beide Befehle als Vorschläge für ähnliche Fragen hier auf SO gesehen.

Gibt es einen anderen Effekt von einem dieser beiden Befehle, der sie anders macht?

    
Hunle 30.10.2015, 04:32
quelle

1 Antwort

4

Der Befehl

%Vor%

wird verwendet, um Dateien in einem Git-Zweig zu entpacken. Dieser Befehl entfernt file aus dem Staging-Bereich und auch entfernt die Datei beim nächsten Commit aus dem Repository.

Der Befehl

%Vor%

bewirkt auch, dass file aus dem Staging-Bereich verschwindet. Dieser Befehl ist jedoch anders, weil er Git anweist, nur vorübergehend alle Änderungen zu ignorieren, die an file vorgenommen wurden. Wenn Sie also die Datei festschreiben, bleibt sie ein Teil des Repositorys, vorausgesetzt, sie ist bereits vorhanden. Wenn Sie möchten, dass Git die am file vorgenommenen Änderungen wieder sieht, können Sie Folgendes ausführen:

%Vor%

Dies wird die Datei an den Staging-Bereich zurückgeben, wenn sie dort war, als Sie assume-unchanged früher ausgeführt haben.

Hier ist ein Link für git rm --cached , und hier ist ein Link für git update-index --assume-unchanged .

    
Tim Biegeleisen 30.10.2015, 04:42
quelle

Tags und Links