Einführung
In diesem Lab machen Sie Ihre ersten Schritte mit der Versionsverwaltung von Git. Sie lernen, wie Sie ein gewöhnliches Verzeichnis in ein Git-Repository umwandeln. Dadurch können Sie Änderungen an Ihren Dateien im Laufe der Zeit verfolgen.
In diesem Schritt wird aus einem gewöhnlichen Ordner ein versioniertes Projekt. Git erstellt dafür ein verborgenes Verzeichnis namens .git, das die Historie, Metadaten und Verweise speichert.
Dieses verborgene Verzeichnis ist die interne Datenbank des Repositorys. Die sichtbaren Dateien bilden den Inhalt Ihres Projekts. .git enthält die internen Strukturen, mit denen Git sich Versionen und Beziehungen zwischen Commits merkt.
Der Vorgang umfasst drei wichtige Phasen:
- Initialisieren: Das Repository einrichten.
- Staging: Dateien zum Speichern vorbereiten.
- Committen: Einen Schnappschuss Ihrer Dateien in der Repository-Historie speichern.
Am Ende dieses Labs verfügen Sie über ein lokales Git-Repository mit Ihrer ersten committeten Datei.
Das Projektverzeichnis project_x erstellen
In diesem Schritt erstellen Sie ein neues Verzeichnis für Ihre Projektdateien. In Git befindet sich ein Repository normalerweise innerhalb eines einzelnen Verzeichnisses.
Öffnen Sie zunächst Ihr Terminal. Sie befinden sich derzeit im Verzeichnis /home/labex/project. Mit dem Befehl mkdir erstellen Sie ein neues Verzeichnis mit dem Namen project_x.
Führen Sie den folgenden Befehl aus:
mkdir project_x
Wechseln Sie anschließend mit dem Befehl cd in dieses neue Verzeichnis:
cd project_x
Sie müssen sich in dem Verzeichnis befinden, in dem Sie Git initialisieren möchten. Mit dem Befehl pwd können Sie Ihren aktuellen Speicherort überprüfen:
pwd
Als Ausgabe sollte /home/labex/project/project_x angezeigt werden.
Git darin mit git init initialisieren
In diesem Schritt wandeln Sie Ihr gewöhnliches Verzeichnis in ein Git-Repository um. Dieser Vorgang wird als „Initialisieren“ bezeichnet.
Führen Sie den folgenden Befehl innerhalb des Verzeichnisses project_x aus:
git init
Eine ähnliche Ausgabe sollte angezeigt werden:
Initialized empty Git repository in /home/labex/project/project_x/.git/
Dieser Befehl erstellt ein verborgenes Unterverzeichnis namens .git. Dieses Verzeichnis enthält alle Metadaten und die Objektdatenbank, die Git benötigt, um Ihr Projekt zu versionieren. Sie müssen nichts innerhalb von .git ändern. Es ist jedoch hilfreich zu wissen, dass dieses Verzeichnis vorhanden ist.
git init lädt also nichts hoch und erstellt auch nicht selbst eine Historie. Der Befehl bereitet lediglich das Verzeichnis vor, damit Git künftig lokal Schnappschüsse verfolgen kann.
Sie können prüfen, ob das Verzeichnis vorhanden ist, indem Sie alle Dateien einschließlich der verborgenen Dateien auflisten:
ls -a
In der Liste sollte .git angezeigt werden.
Die Datei readme.txt erstellen
In diesem Schritt erstellen Sie eine Datei, die Git verfolgen soll. Ein leeres Repository ist wenig hilfreich. Deshalb fügen Sie nun Inhalt hinzu.
Erstellen Sie eine einfache Textdatei mit dem Namen readme.txt. Mit dem Befehl echo können Sie die Datei erstellen und gleichzeitig Text hineinschreiben.
Führen Sie den folgenden Befehl aus:
echo "This is my first git project" > readme.txt
Dieser Befehl erstellt readme.txt mit dem Inhalt „This is my first git project“.
Überprüfen Sie, ob die Datei erstellt wurde:
ls
In der Ausgabe sollte readme.txt aufgeführt sein.
Den Repository-Status mit git status prüfen
In diesem Schritt prüfen Sie den Zustand Ihres Repositorys. Git verfolgt nicht automatisch jede Datei, die Sie erstellen. Sie müssen Git ausdrücklich dazu auffordern.
Der Befehl git status gehört zu den nützlichsten Git-Befehlen. Er zeigt, welche Dateien verfolgt werden, welche geändert wurden und welche für einen Commit im Staging-Bereich liegen.
Führen Sie den Befehl aus:
git status
Eine ähnliche Ausgabe sollte angezeigt werden:
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
readme.txt
nothing added to commit but untracked files present (use "git add" to track)
Beachten Sie, dass readme.txt unter Untracked files aufgeführt ist. Das bedeutet, dass Git die Datei erkennt, ihre Änderungen aber noch nicht verfolgt.
Dies zeigt einen wichtigen Unterschied in Git: Eine Datei kann in Ihrem Arbeitsverzeichnis vorhanden sein, ohne bereits Teil der Versionsverwaltung zu sein. Git kennt die Datei, hat sie aber noch nicht in die Repository-Historie aufgenommen.
Die Datei mit git add in den Staging-Bereich aufnehmen
In diesem Schritt verschieben Sie Ihre Datei in den „Staging-Bereich“, der auch als Index bezeichnet wird. Im Staging-Bereich bereiten Sie einen Schnappschuss einer Gruppe von Änderungen vor, bevor Sie diese in der offiziellen Historie speichern.
Der Staging-Bereich ist eines der wichtigsten Konzepte von Git. Er liegt zwischen Ihrem Arbeitsverzeichnis und der Repository-Historie. Dadurch können Sie genau festlegen, welche Änderungen in den nächsten Commit aufgenommen werden.
Um die Datei readme.txt zu verfolgen und in den Staging-Bereich aufzunehmen, verwenden Sie den Befehl git add:
git add readme.txt
Prüfen Sie nun den Status erneut:
git status
Die Ausgabe sollte nun so aussehen:
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: readme.txt
Beachten Sie, dass readme.txt jetzt unter Changes to be committed aufgeführt ist. Das bedeutet, dass die Datei im Staging-Bereich liegt und committet werden kann.
Deshalb wird Git häufig als Arbeitsablauf mit drei Zuständen beschrieben: Dateien im Arbeitsverzeichnis, Änderungen im Staging-Bereich und Schnappschüsse in der Commit-Historie.
Die Datei mit git commit -m committen
In diesem Schritt speichern Sie die Änderungen, die derzeit im Staging-Bereich liegen, dauerhaft in der Repository-Historie. Diese Aktion wird als „Commit“ bezeichnet.
Ein Commit speichert einen Schnappschuss des Projekts und benötigt eine Nachricht, die die Änderungen beschreibt. Mit der Option -m geben Sie diese Nachricht direkt in der Befehlszeile an.
Führen Sie den folgenden Befehl aus, um Ihre Änderungen zu committen:
git commit -m "Initial commit"
Eine Ausgabe zur Bestätigung des Commits sollte angezeigt werden:
[master (root-commit) 1a2b3c4] Initial commit
1 file changed, 1 insertion(+)
create mode 100644 readme.txt
Prüfen Sie nun ein letztes Mal den Status:
git status
Die Ausgabe sollte Folgendes enthalten:
On branch master
nothing to commit, working tree clean
Das bedeutet, dass Ihr Arbeitsverzeichnis mit dem neuesten Commit im Repository übereinstimmt. Sie haben erfolgreich Ihre erste Version gespeichert.
Zusammenfassung
In diesem Lab haben Sie erfolgreich ein lokales Git-Repository initialisiert. Sie haben gelernt:
- Ein Projektverzeichnis zu erstellen.
- Git mit
git initzu initialisieren. - Eine neue Datei zu erstellen.
- Den Repository-Status mit
git statuszu prüfen. - Eine Datei mit
git addin den Staging-Bereich aufzunehmen. - Die Datei mit
git commitin der Repository-Historie zu speichern.
Diese grundlegenden Befehle verwenden Sie bei der täglichen Arbeit mit Git. Sie können nun Änderungen verfolgen, Versionen speichern und die Historie Ihres Projekts verwalten.



