Wiederherstellung der verlorenen Dateien
Bevor Sie mit dieser Herausforderung beginnen, wurde für Sie ein Git-Repository im Verzeichnis ~/project/important-project
initialisiert. Dieses Repository enthält mehrere Commits, darunter die Erstellung und anschließende versehentliche Löschung von zwei wichtigen Dateien. Hier ist, was Sie wissen müssen:
- Das Repository wurde mit einem Initial-Commit erstellt, der eine
README.md
-Datei hinzufügte.
- Zwei wichtige Dateien,
important_algorithm.py
und crucial_data.txt
, wurden in einem späteren Commit hinzugefügt.
- Es gab noch einige weitere Commits mit verschiedenen Änderungen.
- Irgendwann wurden
important_algorithm.py
und crucial_data.txt
versehentlich gelöscht, und diese Löschung wurde committet.
- Es gab mindestens einen weiteren Commit nach der versehentlichen Löschung.
Ihre Aufgabe besteht darin, die gelöschten Dateien durch die Navigation im Repository-Verlauf wiederherzustellen und dann die wiederhergestellten Dateien zu committen.
Aufgaben
- Untersuchen Sie den Verlauf des Repositorys, um herauszufinden, wann
important_algorithm.py
und crucial_data.txt
gelöscht wurden.
- Stellen Sie das Repository in den Zustand unmittelbar vor der Löschung wieder her.
- Behalten Sie die ursprünglichen Commits bei und erstellen Sie einen neuen Commit mit der Nachricht "Recover deleted files" (Wiederherstellung der gelöschten Dateien).
Anforderungen
- Arbeiten Sie im Verzeichnis
~/project/important-project
.
- Stellen Sie sicher, dass
important_algorithm.py
und crucial_data.txt
nach der Wiederherstellung vorhanden sind.
- Stellen Sie sicher, dass die letzte Commit-Nachricht "Recover deleted files" lautet und der Commit-Verlauf erhalten bleibt.
Beispiel
Nachdem Sie die Herausforderung erfolgreich abgeschlossen haben, sollte das Ausführen von ls
im Projektverzeichnis Folgendes anzeigen:
$ ls ~/project/important-project
important_algorithm.py crucial_data.txt README.md
Das Ausführen von git status
sollte ein sauberes Arbeitsverzeichnis anzeigen:
$ git status
On branch master
nothing to commit, working tree clean
Und git log
sollte Ihren neuen Commit oben anzeigen:
$ git log --oneline
8876d8b (HEAD -> master) Recover deleted files
9b3525c Update project status
5e6234c Oops, accidentally deleted important files
9de9506 Update algorithm TODO
01c36ae Add crucial data and algorithm
638a98d Initial commit