Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Git-Grundlagen

Die ganze Lektion steht hier zum Lesen. Erstellen Sie ein kostenloses Konto, um sie in einem Live-Lab auszuführen.

Container-Lab13 Min. Lesezeit16 Befehle

Was du machst

Git hält den Verlauf eines Ordners fest: Bei jedem Commit speichert es, was sich geändert hat, wer es geändert hat und warum. Ein Server wie Gitea, GitHub oder GitLab bewahrt eine Kopie dieses Verlaufs auf, die andere Menschen sehen und ergänzen können.

In dieser Lektion legst du ein Repository auf deinem eigenen Gitea-Server an, machst auf deinem Computer einen Ordner mit einer Datei, committest sie und pushst sie auf den Server.

Bevor du anfängst

Notiz

Klicke oben in der Leiste dieser Lektion auf Lab starten und warte, bis dort steht, dass es läuft. Jede Schaltfläche Ausführen unten tippt ihren Befehl ins Terminal deines Labs, einen nach dem anderen in derselben Sitzung. Wenn du zuschauen oder eigene Befehle tippen willst, klicke in der Leiste auf Terminal öffnen (neuer Tab).

1. Lege ein Repository in Gitea an

Klicke in der Lab-Leiste auf Gitea, um es in einem neuen Tab zu öffnen. Dann:

  1. Klicke oben rechts auf Sign In und melde dich als student mit dem Passwort student an.
  2. Klicke oben rechts auf + und dann auf New Repository.
  3. Nenne es my-first-repo. Lass Initialize Repository nicht angehakt, damit es leer beginnt.
  4. Klicke auf Create Repository.

Gitea zeigt ein leeres Repository und die Befehle, um es zu füllen. Genau das machst du im Rest dieser Lektion, Schritt für Schritt.

2. Sag Git, wer du bist

Jeder Commit speichert, wer ihn gemacht hat. Git fragt einmal nach einem Namen und einer E-Mail-Adresse, und --global behält sie für jedes Repository auf diesem Computer. Führe beide aus.

Befehl
git config --global user.name "Student"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Befehl
git config --global user.email "[email protected]"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

3. Lege einen Ordner für das Projekt an

mkdir legt in deinem Home-Ordner einen Ordner namens my-first-repo an, denselben Namen wie das Repository in Gitea, und cd wechselt hinein. Jeder Befehl nach diesem läuft in diesem Ordner.

Befehl
mkdir -p ~/my-first-repo

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Befehl
cd ~/my-first-repo

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

4. Mache daraus ein Repository

git init macht diesen Ordner zu einem Git-Repository, indem es einen versteckten Ordner .git anlegt. Dort wird der Verlauf gespeichert. Noch ist nichts aufgezeichnet. Git gibt vielleicht ein paar Zeilen mit hint: zum Namen master aus. Das ist normal, und Schritt 10 kümmert sich darum.

Befehl
git init

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

5. Lege eine Datei an

echo schreibt eine Zeile, und > legt sie in einer neuen Datei namens hello.txt ab. cat zeigt, was in der Datei steht.

Befehl
echo "Hello, Git" > hello.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Befehl
cat hello.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

6. Frage Git, was es sieht

git status listet auf, was sich geändert hat. hello.txt ist untracked, also nicht verfolgt: Git sieht die Datei, aber niemand hat Git gebeten, sie zu behalten.

Befehl
git status

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

7. Nimm die Datei in die Staging-Area auf

git add legt eine Datei in die Staging-Area. Das ist die Liste der Änderungen, die in den nächsten Commit kommen. Führe git status noch einmal aus, dann steht hello.txt unter „Changes to be committed“.

Befehl
git add hello.txt

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Befehl
git status

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

8. Committe sie

Ein Commit speichert alles, was in der Staging-Area liegt, als einen Schritt im Verlauf, mit einer Nachricht, die sagt, worum es geht. git log --oneline listet die bisherigen Commits auf: einen, mit einem kurzen Code, der ihn benennt, und deiner Nachricht. --no-pager gibt die Liste direkt aus. Das einfache git log würde sie in einer Ansicht öffnen, die du mit q verlässt.

Befehl
git commit -m "Add hello.txt"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Befehl
git --no-pager log --oneline

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

9. Verbinde es mit Gitea

Ein Remote ist eine weitere Kopie des Repositorys, hier die, die du in Schritt 1 angelegt hast. origin ist der Name, den alle der wichtigsten Kopie geben. git remote -v zeigt, wohin sie zeigt.

Befehl
git remote add origin http://student:student@gitea:3000/student/my-first-repo.git

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Befehl
git remote -v

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Ein Passwort in einer Adresse

Warnung

Die Adresse oben enthält Namen und Passwort des Gitea-Kontos, daher hält Git nie an, um zu fragen. Das ist nur auf einem Übungsserver sicher, den allein du erreichen kannst. Schreibe niemals ein echtes Passwort in eine Adresse: Git fragt danach, wenn es eines braucht, und ein echter Server wie GitHub verlangt stattdessen ein Token.

10. Nenne den Branch main

Commits entstehen auf einem Branch. Ältere Versionen von Git nennen den ersten master. Die meisten Server, darunter Gitea und GitHub, erwarten heute main. git branch -M main benennt ihn in main um, egal wie er hieß, damit beides zusammenpasst.

Befehl
git branch -M main

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

11. Pushe ihn

git push schickt deine Commits an das Remote. -u origin main merkt sich außerdem, dass dieser Branch zu origin gehört. Beim nächsten Mal reicht dann ein einfaches git push.

Befehl
git push -u origin main

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

12. Sieh es in Gitea

Gehe zurück zum Gitea-Tab und öffne student/my-first-repo (oder lade die Seite neu). hello.txt ist da, daneben deine Commit-Nachricht. Klicke auf die Anzahl der Commits, um den Verlauf zu sehen.

Probiere es noch einmal allein

Tipp

Klicke in der Lab-Leiste auf Terminal öffnen (neuer Tab). Füge mit echo "Second line" >> hello.txt eine zweite Zeile hinzu (zwei >, damit sie ergänzt statt ersetzt). Dann folgen git add, git commit und git push. Sieh zu, wie der Verlauf in Gitea wächst.

Wurde das Terminal neu gestartet, führe zuerst das cd aus Schritt 3 noch einmal aus, um wieder in den Ordner zu kommen.

Mehr in diesem Lab

Über dieses Lab und seinen Quellcode: Git-und-Gitea-Lab: clone, commit und push auf einem eigenen Git-Server lernen

Sie unterrichten eine Klasse? Weisen Sie diese Lektionen Ihren Lernenden zu, mit Bewertung und einem Lab für jede lernende Person.