git rm --cached file vs. git reset file
Frage
Ich versuche Git zu lernen.Ich bin verwirrt
git rm --cached file
Und
git reset file
Beide Befehle scheinen die Datei vom bereitgestellten in den nicht bereitgestellten Bereich zu übertragen.Wie unterscheiden sich die Befehle?
Lösung
git rm --cached <file>
Der Inhalt der Datei wird vollständig aus dem Index entfernt.Dies bedeutet, dass die Datei beim Festschreiben aus dem entfernt wird HEAD
begehen.(Wenn die Datei nur zum Index hinzugefügt und noch nicht verfolgt wurde, handelt es sich um ein „no-op“.)
git reset -- <file>
Setzt den Inhalt der Datei im Index auf den gleichen Wert wie beim Head-Commit zurück.Dies bedeutet, dass beim Festschreiben keine Änderungen wird in die Datei übernommen.Dieser Vorgang ist ungültig, wenn keine nachverfolgte Version der Datei vorhanden ist HEAD
begehen.