### Aufgabe 1 -- Staging Area Initialisierung des neuen git Repositorys in einem leeren Verzeichnis. ``` mkdir local_repository cd local_repository git init ``` Anlegen einer neuen Text-Datei und einfügen einiger Zeilen Text ``` git add text.txt nano text.txt ``` Anzeigen des aktuellen Statuses und hinzufügen der Datei zu git Stage ``` git status git add text.txt ``` Anzeigen des aktuellen Statuses und Änderungen. Hinzufügen weiterer Zeilen Text in bestehende Datei. ``` git status git diff text.txt echo "Test" >> text.txt echo "1" >> text.txt ``` Anzeigen des aktuellen Statuses und erzeugung eines Commits. ``` git status git add text.txt git commit -m "1" ``` Die Commit-ID in der Ausgabe ist eine lange Zahl: commit 9a154e0f17b4ad7f... . Anzeigen Änderungen. ``` git log git diff text.txt ``` --- ### Staging Area Zurücksetzen der Datei auf Stage Stand und Anzeigen aktuellen Status. ``` git restore --staged text.txt git status ``` Anzeigen Änderungen in der Datei und Entfernung aus Stage ohne Zurücksetzen der Datei. ``` git diff text.txt git restore --staged text.txt ``` Anzeigen Status und Änderungen. Zurücksetzen auf den Stand im Commit und erneutes anzeigen des Statuses. ``` git status git diff text.txt git restore text.txt git status ``` --- ### Branching - Anlegen ``` echo "weitere Zeilen" >> text.txt git add text.txt git commit -m "2ersteDatei" echo "noch weitere Zeilen" >> text.txt git add text.txt git commit -m "3ersteDatei" git init git add text2.txt git commit -m "neue Datei" git branch test1 checkout test1 echo "weitere Zeilen" >> text.txt git add text.txt git commit -m "4ersteDatei" echo "weitere Zeilen" >> text.txt git add text.txt git commit -m "5ersteDatei" git log echo "weitere Zeilen" >> text2.txt git add text2.txt git status echo "weitere Zeilen" >> text2.txt git add text2.txt git commit -m "CommitDatei2" ``` ### Branching - Zweige wechseln Nr.1 ``` git switch master git status git checkout test1 git checkout -b test2 ``` ### Branching - Zweige wechseln Nr.2 ``` git reset master git status echo "weitere Zeilen" >> text.txt git switch test2 (Geht nicht, weil Änderung nicht committet) git add text.txt (Geht, weil Änderungen in Stage) git switch -f test2 git branch -m test1 test3 ``` ### Historie - Anzeigen Nr.1 ``` git switch test3 git log (Autor, Datum, Commit-Nachricht, Kennung) git log -1 git log --oneline git log --all ("Head" zeigt auf aktuellen Commit) git switch test2 git log ```