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:
- Klicke oben rechts auf Sign In und melde dich als
studentmit dem Passwortstudentan. - Klicke oben rechts auf + und dann auf New Repository.
- Nenne es
my-first-repo. Lass Initialize Repository nicht angehakt, damit es leer beginnt. - 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.
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.
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.
mkdir -p ~/my-first-repoHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
cd ~/my-first-repoHier 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.
git initHier 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.
echo "Hello, Git" > hello.txtHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
cat hello.txtHier 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.
git statusHier 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“.
git add hello.txtHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
git statusHier 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.
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.
git --no-pager log --onelineHier 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.
git remote add origin http://student:student@gitea:3000/student/my-first-repo.gitHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
git remote -vHier 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.
git branch -M mainHier 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.
git push -u origin mainHier 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.