Die Heimat: GitHub
Ein zweiter Ort für Ihren Code — ein Dienst, der schon steht, den man nicht installieren muss und der für ein privates Repository nichts kostet.
Bis hierher liegt jeder Stand auf einem Rechner. Git hält die Geschichte fest, aber die Geschichte liegt im selben Ordner wie die Anwendung — ein defekter Datenträger, ein falsch gelöschtes Verzeichnis, und beides ist zugleich weg. Ein zweiter Ort behebt das, und mehr will diese Phase nicht.
Ein Konto und ein privates Repository
Auf github.com ein Konto anlegen, dann New repository: Name ausleihe, Sichtbarkeit Private, und nichts ankreuzen (keine README, keine .gitignore, keine Lizenz) — Ihr Ordner bringt das alles schon mit.
Privat ist die Voreinstellung dieses Kurses. Ein öffentliches Repository ist eine Veröffentlichung — mit allem, was je darin stand, auch dem, was Sie vor drei Wochen wieder herausgenommen haben.
Anmelden, ohne ein Passwort einzutippen
# einmalig je Rechner: ein Schlüsselpaar ssh-keygen -t ed25519 -C "laptop-buero" cat ~/.ssh/id_ed25519.pub # den ausgegebenen Text einfügen unter # GitHub → Settings → SSH and GPG keys → New SSH key ssh -T git@github.com # Probe: „Hi <konto>! You've successfully authenticated“
Es ist dasselbe Schlüsselpaar-Verfahren, das später den Zugang zum Server regelt (Station 05, „Mehrere Rechner & Übergabe“). Wer es hier einmal gemacht hat, macht es dort nicht neu.
Die Fernkopie eintragen und den Stand hochschieben
git remote add origin git@github.com:<konto>/ausleihe.git git push -u origin main
origin ist nur ein Name — der übliche für „die Heimat“. Von jetzt an genügt git push.
Die Probe: an einem anderen Ort auspacken
cd /tmp git clone git@github.com:<konto>/ausleihe.git probe ls probe
Erst dieser Schritt beweist, dass der zweite Ort trägt. Eine Sicherung, die nie zurückgeholt wurde, ist eine Vermutung — dieselbe Regel, die im Kurs „Bevor Anwender damit arbeiten“ für die Datensicherung gilt.
- Prüfliste
WarumSpeichern und Veröffentlichen sind zwei verschiedene Dinge
| Befehl | Bedeutung | Wirkung |
|---|---|---|
git commit | Festhalten. Passiert oft, auch mitten in der Arbeit. | ändert nichts außerhalb Ihres Rechners |
git push origin main | Aufbewahren. Passiert oft. | legt den Stand an den zweiten Ort — ändert nichts, was läuft |
git push deploy main | Veröffentlichen. Passiert bewusst. | tauscht die laufende Anwendung (erst ab Etappe C) |
Zwei Fernkopien, zwei Bedeutungen. Wer sie zusammenlegt, verliert die Möglichkeit, einen Zwischenstand zu sichern, ohne ihn zu veröffentlichen — und das ist genau die Möglichkeit, die man am Freitagnachmittag braucht.
In Etappe C kommt deshalb ein zweiter Name dazu: deploy. Es ist derselbe Code, dieselbe Historie, eine andere Absicht.
TiefeWas ein privates Repository bei GitHub bedeutet — und was nicht
Nicht bedeutet es Verschlüsselung. Der Code liegt unverschlüsselt auf Servern eines US-Unternehmens; GitHub kann ihn technisch lesen, und die Nutzungsbedingungen erlauben die Verarbeitung zum Betrieb des Dienstes. Für den Quellcode einer betrieblichen Anwendung ist das in aller Regel unproblematisch — für personenbezogene Daten wäre es das nicht, aber die gehören ohnehin nie ins Repository (Regel 9).
Wer diese Abhängigkeit nicht will, hat zwei Wege, und beide stehen in diesem Kurs: Forgejo auf dem eigenen Server (Station 04) — quelloffen, vom Codeberg e. V. getragen, vom Einrichtungs-Skript mitinstalliert. Oder, für den Anfang, ein zweiter Ort ganz ohne Dienst:
git init --bare /Volumes/backup/ausleihe.git git remote add origin /Volumes/backup/ausleihe.git git push -u origin main
Das ist vollwertiges Git und kostet nichts. Was fehlt, ist alles, was um Git herum nützlich ist: Ansehen im Browser, Nachverfolgen von Aufgaben, und die Anbindung an Coolify in Etappe C.