Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

6.4 Erste Schritte mit Git

Humboldt-Universität zu Berlin, Institut für Bibliotheks- und Informationswissenschaft

Jetzt wird es praktisch! In diesem Kapitel erstellen Sie Ihr erstes Git-Repository und lernen die wichtigsten Grundbefehle kennen.

Ein neues Repository erstellen

Schritt 1: Projektordner vorbereiten

Erstellen Sie zunächst einen Ordner für ein kleines Übungsprojekt:

mkdir mein-erstes-repo
cd mein-erstes-repo

Schritt 2: Git initialisieren

Um Git für diesen Ordner zu aktivieren, verwenden Sie:

git init

Ausgabe:

Initialized empty Git repository in /Users/erika/mein-erstes-repo/.git/

Sie können den .git-Ordner mit ls -la sichtbar machen (das -a zeigt versteckte Dateien):

ls -la

Die erste Datei hinzufügen

Eine Datei erstellen

Erstellen Sie eine einfache Python-Datei:

echo "print('Hallo Git!')" > hallo.py

Oder erstellen Sie die Datei mit einem Texteditor Ihrer Wahl und fügen Sie folgenden Inhalt ein:

print('Hallo Git!')

Status überprüfen

Prüfen Sie mit git status, was Git “sieht”:

git status

Ausgabe:

On branch main

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        hallo.py

nothing added to commit but untracked files present (use "git add" to track)

Interpretation: Git hat die neue Datei hallo.py bemerkt, überwacht sie aber noch nicht (“untracked”).

Git add: Dateien zur Staging Area hinzufügen

Um Git mitzuteilen, dass Sie hallo.py versionieren möchten:

git add hallo.py

Prüfen Sie erneut den Status:

git status

Ausgabe:

On branch main

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   hallo.py

Die Datei ist jetzt in der Staging Area und bereit für den ersten Commit!

Git commit: Den ersten Commit erstellen

Jetzt speichern wir die Änderung dauerhaft in der Versionsgeschichte:

git commit -m "Erste Version: Hallo-Welt-Skript hinzugefügt"

Ausgabe:

[main (root-commit) a1b2c3d] Erste Version: Hallo-Welt-Skript hinzugefügt
 1 file changed, 1 insertion(+)
 create mode 100644 hallo.py

Was bedeutet das -m? Das -m steht für “message” (Nachricht). Die Nachricht sollte kurz beschreiben, was in diesem Commit geändert wurde.

Status nach dem Commit

Prüfen Sie erneut mit git status:

git status

Ausgabe:

On branch main
nothing to commit, working tree clean

“Working tree clean” bedeutet: Alle Änderungen sind committed, es gibt keine offenen Änderungen.

Weitere Änderungen committen

Lassen Sie uns das Skript erweitern und diese Änderung als zweiten Commit speichern.

Datei ändern

Öffnen Sie hallo.py und ändern Sie den Inhalt:

# Mein erstes Git-Projekt

def begruessung(name):
    return f"Hallo {name}, willkommen bei Git!"

print(begruessung("Welt"))

Änderungen anzeigen

Mit git status sehen Sie:

git status

Ausgabe:

On branch main
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
        modified:   hallo.py

no changes added to commit (use "git add" and/or "git commit -a")

Git hat die Änderung bemerkt, aber sie ist noch nicht in der Staging Area.

Änderung zur Staging Area hinzufügen und committen

git add hallo.py
git commit -m "Begrüßungsfunktion hinzugefügt"

Ausgabe:

[main e4f5g6h] Begrüßungsfunktion hinzugefügt
 1 file changed, 5 insertions(+), 1 deletion(-)

Gute Commit-Messages schreiben

Commit-Messages sind wichtig für die Nachvollziehbarkeit. Hier einige Richtlinien:

Gute Commit-Messages

Divisionsfunktion hinzugefügt
Bugfix: Division durch Null abfangen
Dokumentation für CSV-Import erweitert
Konfigurationsdatei für Tests erstellt

Merkmale guter Messages:

Schlechte Commit-Messages

Update
Änderungen
asdf
WIP
fertig gemacht
kleine Anpassungen

Probleme:

Längere Commit-Messages

Für komplexere Commits können Sie eine ausführlichere Beschreibung hinzufügen:

git commit

(ohne -m) öffnet Ihren konfigurierten Texteditor. Schreiben Sie:

Divisionsfunktion mit Fehlerbehandlung hinzugefügt

- Division durch Null wird abgefangen
- Rückgabe von None bei ungültigen Eingaben
- Tests für Edge-Cases ergänzt

Format:

Der typische Git-Workflow

Zusammengefasst sieht ein typischer Arbeitszyklus so aus:

Workflow in Befehlen

# 1. Status prüfen (was wurde geändert?)
git status

# 2. Dateien zur Staging Area hinzufügen
git add dateiname.py

# 3. Commit erstellen
git commit -m "Beschreibung der Änderung"

# 4. Status erneut prüfen (alles committed?)
git status

Häufige Anfängerfehler

Fehler 1: Vergessen, git add zu verwenden

# Datei geändert, aber vergessen, sie hinzuzufügen
git commit -m "Änderungen"

Ergebnis: Fehlermeldung oder leerer Commit

Lösung: Immer erst git add, dann git commit

Fehler 2: Commit ohne Message

git commit

Ohne -m öffnet sich ein Editor. Anfänger*innen schließen diesen oft, ohne eine Commit-Message einzugeben.

Lösung: Entweder Message im Editor eingeben oder -m "Message" verwenden

Fehler 3: Ungewollte Dateien committen

git add .
git commit -m "Alles"

Dabei werden auch temporäre Dateien, Caches oder vertrauliche Daten committed.

Lösung: Immer erst git status prüfen, dann gezielt Dateien mit git add auswählen. Im nächsten Kapitel lernen Sie .gitignore kennen.

Zusammenfassung

Die wichtigsten Befehle für die ersten Schritte:

BefehlBeschreibung
git initRepository initialisieren
git statusStatus anzeigen (sehr wichtig!)
git add <datei>Datei zur Staging Area hinzufügen
git add .Alle Änderungen hinzufügen
git commit -m "Text"Commit mit Message erstellen

Im nächsten Kapitel lernen Sie, wie Sie die Versionsgeschichte anzeigen und durch frühere Versionen navigieren können.