Das Tagebuch
public class Fahrzeug
{
String fahrzeugID;
/** Konstruktor für Objekte der
* Klasse Fahrzeug */
public Fahrzeug(String id)
{
this.fahrzeugID = id;
}
}
max@pc:~$ mkdir tagebuch
max@pc:~$ cd tagebuch/
max@pc:~$ git init
Leeres Git-Repository in /home/max/tagebuch/.git/ initialisiert
git-Befehl:
git init
Von nun an überwacht git das Verzeichnis tagebuch auf Änderungen.
git-Befehl:
git status
max@pc:~/tagebuch$ git status
Auf Branch main
Noch keine Commits
nichts zu committen (erstellen/kopieren Sie Dateien
und benutzen Sie "git add" zum Versionieren)
git speichert alle seine Infos in einem versteckten Verzeichnis .git im Arbeitsverzeichnis.
max@pc:~/tagebuch$ ls -la
insgesamt 84
drwxr-xr-x 3 max max 4096 13. Nov 19:43 .
drwxrwxrwt 29 max max 61440 13. Nov 19:43 ..
drwxr-xr-x 8 max max 4096 13. Nov 19:43 .git
max@pc:~/tagebuch$ nano aufstehen.txt
max@pc:~/tagebuch$ cat aufstehen.txt
Ich habe gut geschlafen.
Um 6:20 bin ich aufgestanden.
Jetzt können wir beginnen unser Tagebuch zu schreiben: Lege mit einem Texteditor deiner Wahl (nicht Word oder Writer!) eine Datei aufstehen.txt an und halte fest, wie du geschlafen hast.
AA: Lege ein Verzeichnis tagebuch an und stelle es unter Versionskontrolle. Erzeuge die Datei
aufstehen.txt und speichere sie.
Infos zum Nachlesen findest du im Wiki.
Wie kann man den aktuellen Zustand des Verzeichnisses "festhalten"?
Mit git kann man eine Abfolge von "gespeicherten" Zuständen des Repos erzeugen - ein solcher gespeicherter Zustand heißt
Commit.
Bearbeite den Abschnitt "Schritt für Schritt" und die Aufgaben auf der Wiki Seite zum ersten Repo.
https://info-bw.de/faecher:informatik:oberstufe:git:erstes_repo:start
git-Befehl
git log
Ausführliche Auskunft über die Commits, die zum aktuellen Stand geführt haben.
Commit Hash
(erste 7 Zeichen eindeutig)
Autor, Zeit
Referenzen
git log --graph --pretty=format:'%Cred%h%Creset \
-%C(yellow)%d%Creset %s %Cgreen(%ci) %Creset' \
--abbrev-commit
git log --graph --pretty=format:'%Cred%h%Creset \
-%C(yellow)%d%Creset %s %Cgreen(%ci) %Creset' \
--abbrev-commit
Umständlich → Man macht sich einen "Alias":
git config alias.lg "log --graph --pretty=format:'%Cred%h%Creset \
-%C(yellow)%d%Creset %s %Cgreen(%ci) %Creset' \
--abbrev-commit"
Jetzt wollen wir in der Zeit zurückgehen, um einen als Commit abgelegten Zustand des Arbeitsverzeichnisss wieder herzustellen.
git-Befehl
git checkout f935d6
Wo sortiert sich der ausgehend von 9353d6 veränderte Zustand des Arbeitsverzeichnisses in die Versionsgeschichte ein, wenn man einen neuen Commit erzeugt?
Man erstellt einen neuen Branch
Sie befinden sich im Zustand eines 'losgelösten HEAD'. Sie können sich
umschauen, experimentelle Änderungen vornehmen und diese committen, und
Sie können alle möglichen Commits, die Sie in diesem Zustand machen,
ohne Auswirkungen auf irgendeinen Branch verwerfen, indem Sie zu einem
anderen Branch wechseln.
Wenn Sie einen neuen Branch erstellen möchten, um Ihre erstellten Commits
zu behalten, können Sie das (jetzt oder später) durch Nutzung von
'switch' mit der Option -c tun.
Bearbeite die Wiki-Seite "Versionsgeschichte und Zeitmaschine"
https://info-bw.de/faecher:informatik:oberstufe:git:versionsgeschichte:start