Überprüfen des Git-Status für angewendete Änderungen
In diesem Schritt werden wir untersuchen, wie der stash
-Befehl von Git mit dem Arbeitsverzeichnis interagiert und wie Sie den Status Ihres Repositorys nach dem Anwenden eines Stashes überprüfen können.
Zunächst stellen wir sicher, dass wir uns in unserem Projektverzeichnis befinden. Öffnen Sie Ihr Terminal und navigieren Sie zum my-time-machine
-Verzeichnis:
cd ~/project/my-time-machine
Jetzt erstellen wir eine neue Datei und fügen etwas Inhalt hinzu, um uncommittete Änderungen zu simulieren:
echo "This is a new feature." > feature.txt
echo "Adding some more content." >> message.txt
Wir haben jetzt eine neue Datei feature.txt
erstellt und die vorhandene message.txt
geändert. Lassen Sie uns sehen, wie Git diese Änderungen mit git status
ansieht:
git status
Sie sollten eine Ausgabe sehen, die anzeigt, dass feature.txt
nicht verfolgt wird und message.txt
geändert wurde:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: message.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
feature.txt
no changes added to commit (use "git add" and/or "git commit -a")
Jetzt legen wir diese Änderungen in einem Stash ab. Ein Stash ist wie das vorübergehende Zurückstellen Ihrer aktuellen Arbeit, damit Sie zu etwas anderem wechseln können, ohne unvollständige Änderungen zu committen.
git stash save "Work in progress"
Sie sollten eine Ausgabe sehen, die bestätigt, dass der Stash gespeichert wurde:
Saved working tree and index state On master: Work in progress
Ihr Arbeitsverzeichnis sollte jetzt sauber sein, als hätten Sie diese Änderungen nicht vorgenommen. Sie können dies mit git status
überprüfen:
git status
Die Ausgabe sollte ein sauberes Arbeitsverzeichnis anzeigen:
On branch master
nothing to commit, working tree clean
Jetzt wenden wir den Stash an, den wir gerade erstellt haben. Das Anwenden eines Stashes bringt die versteckten Änderungen wieder in Ihr Arbeitsverzeichnis.
git stash apply
Sie sollten eine Ausgabe sehen, die anzeigt, dass die Änderungen angewendet wurden:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: message.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
feature.txt
no changes added to commit (use "git add" and/or "git commit -a")
Dropped refs/stash@{0} (a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9)
Schließlich überprüfen wir erneut den git status
, um den Zustand unseres Arbeitsverzeichnisses nach dem Anwenden des Stashes zu sehen.
git status
Die Ausgabe sollte zeigen, dass die Änderungen aus dem Stash jetzt wieder in Ihrem Arbeitsverzeichnis sind und als geänderte und nicht verfolgte Dateien erscheinen, genau wie bevor wir sie versteckt haben. Dies bestätigt, dass git stash apply
die Änderungen wiederherstellt, ohne sie automatisch zu stage oder zu committen.