GitHub - Dein Code in der Cloud
Git lokal ist super. Git + GitHub ist Backup, Portfolio und Zusammenarbeit in einem.
Git vs. GitHub - Was ist der Unterschied?
Git = Das Programm auf deinem Rechner, das Versionen trackt.
GitHub = Ein Online-Service, der Git-Repositories hostet.
Stell dir vor: Git ist wie ein Tagebuch, das du lokal schreibst. GitHub ist wie ein Tresor in der Cloud, wo du eine Kopie aufbewahrst.
- Backup - Dein Code ist sicher, auch wenn dein Rechner stirbt
- Portfolio - Zeig der Welt (oder Arbeitgebern) was du kannst
- Zusammenarbeit - Mehrere Leute können am gleichen Projekt arbeiten
- Hosting - GitHub Pages kann statische Websites kostenlos hosten
Nicht zwingend. Git funktioniert komplett ohne. Aber sobald du:
- Ein Backup in der Cloud willst
- Deinen Code teilen möchtest
- Von mehreren Geräten arbeiten willst
- Ein Portfolio aufbauen möchtest
...ist GitHub (oder GitLab, Bitbucket) der logische nächste Schritt.
GitHub Account erstellen
- Geh zu github.com
- Klick "Sign up"
- E-Mail, Passwort, Username wählen
- E-Mail bestätigen
Username-Tipp
Dein Username wird Teil deiner GitHub-URL: github.com/dein-username.
Wenn du GitHub
als Portfolio nutzen willst, wähl was Professionelles. "xXDarkCoder420Xx" macht sich auf dem
Lebenslauf weniger gut.
Kostenlos vs. Bezahlt
Der kostenlose Account reicht völlig. Du bekommst:
- Unbegrenzte öffentliche Repositories
- Unbegrenzte private Repositories
- GitHub Pages (kostenlos Websites hosten)
- 2000 Actions-Minuten/Monat (CI/CD)
GitHub Oberfläche verstehen
GitHub kann am Anfang überwältigend wirken. Hier die wichtigsten Bereiche:
Dein Profil finden
Klick oben rechts auf dein Profilbild → "Your profile". Hier siehst du:
- Alle deine Repositories
- Deine Contribution-Übersicht (grüne Kästchen)
- Deine README (falls du eine hast)
Deine Profil-URL: github.com/dein-username
Deine Repositories finden
- Schnellzugriff: Profilbild → "Your repositories"
- Oder:
github.com/dein-username?tab=repositories - Einzelnes Repo:
github.com/dein-username/repo-name
GitHub Pages URL finden
Wenn du GitHub Pages aktiviert hast, ist deine Live-Seite unter:
https://dein-username.github.io/repository-name/
Du findest den Link auch im Repository unter:
- Repository öffnen
- Rechts in der Sidebar: "Deployments" oder "github-pages"
- Oder: Settings → Pages → "Your site is live at..."
Auf der rechten Seite jedes Repositories siehst du:
- About: Beschreibung + Website-Link (falls gesetzt)
- Releases: Veröffentlichte Versionen
- Deployments: GitHub Pages Status
- Languages: Verwendete Programmiersprachen
Repository auf GitHub erstellen
- Eingeloggt auf GitHub: Klick das + oben rechts → "New repository"
- Repository name: z.B. "DevPanicZone" oder "mein-projekt"
- Description: Optional, kurze Beschreibung
- Public/Private:
- Public = Jeder kann es sehen (gut für Portfolio)
- Private = Nur du (und eingeladene Personen)
- Initialize with README: NEIN! (Du hast ja schon ein lokales Projekt)
- Add .gitignore: NEIN! (Hast du auch schon)
- Klick "Create repository"
Was jetzt passiert
GitHub zeigt dir eine Seite mit Befehlen. Die wichtigen sind unter "…or push an existing repository from the command line".
HTTPS vs. SSH
Zwei Wege, um mit GitHub zu kommunizieren:
HTTPS
- Einfacher einzurichten
- URL sieht so aus:
https://github.com/username/repo.git - Braucht Personal Access Token (PAT) statt Passwort
- Token muss regelmäßig erneuert werden
SSH
- Einmalig mehr Setup
- URL sieht so aus:
git@github.com:username/repo.git - Danach keine Passwort-Eingabe mehr
- Sicherer
Empfehlung: Nimm SSH. Das Setup dauert 5 Minuten, danach hast du Ruhe.
SSH einrichten
1. SSH-Key generieren
ssh-keygen -t ed25519 -C "deine@email.com"
Es fragt nach einem Speicherort - einfach Enter drücken für den Standard. Dann optional ein Passwort (Passphrase) für extra Sicherheit.
2. SSH-Agent starten
eval "$(ssh-agent -s)"
3. Key zum Agent hinzufügen
macOS:
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
Linux/Windows:
ssh-add ~/.ssh/id_ed25519
4. Öffentlichen Key kopieren
cat ~/.ssh/id_ed25519.pub
Kopier den gesamten Output (fängt mit ssh-ed25519 an).
5. Key auf GitHub hinzufügen
- GitHub → Profilbild oben rechts → Settings
- Links: "SSH and GPG keys"
- "New SSH key"
- Title: z.B. "MacMini" oder "Arbeits-Laptop"
- Key: Einfügen was du kopiert hast
- "Add SSH key"
6. Testen
ssh -T git@github.com
Wenn "Hi username!" kommt, hat's geklappt.
Lokales Projekt mit GitHub verbinden
Du hast ein lokales Git-Repository und ein leeres GitHub-Repository. Jetzt verbinden:
Remote hinzufügen
git remote add origin git@github.com:dein-username/dein-repo.git
origin ist der Name für das Remote-Repository. Das ist Konvention
-
du könntest es
auch "github" oder "cloud" nennen, aber "origin" ist Standard.
Prüfen ob's geklappt hat
git remote -v
Sollte deine GitHub-URL anzeigen.
Branch umbenennen (falls nötig)
GitHub erwartet "main" als Hauptbranch. Falls deiner "master" heißt:
git branch -M main
Erster Push
git push -u origin main
Das -u (oder --set-upstream)
verknüpft
deinen lokalen main-Branch mit
dem remote main-Branch. Danach reicht git push.
Refresh deine GitHub-Seite - dein Code sollte jetzt dort sein!
Push - Code hochladen
Nachdem du lokal Commits gemacht hast:
git push
Das war's. Deine lokalen Commits werden auf GitHub hochgeladen.
Was wenn's nicht klappt?
Wenn jemand (oder du von einem anderen Gerät) in der Zwischenzeit gepusht hat:
git pull
git push
Erst die Änderungen holen, dann pushen.
Bestimmten Branch pushen
git push origin feature-xyz
Clone - Projekt herunterladen
Ein Repository von GitHub auf deinen Rechner kopieren:
git clone git@github.com:username/repository.git
Das erstellt einen neuen Ordner mit dem Projektnamen und der kompletten Git-Historie.
In bestimmten Ordner clonen
git clone git@github.com:username/repository.git mein-ordnername
HTTPS-Version
git clone https://github.com/username/repository.git
Pull - Änderungen holen
Wenn auf GitHub Änderungen sind (von dir oder anderen):
git pull
Das holt die Änderungen UND merged sie in deinen lokalen Branch.
Sicherer: Fetch + Merge
git fetch
Holt die Infos, merged aber noch nicht. Du kannst dann schauen:
git log origin/main
Und wenn du zufrieden bist:
git merge origin/main
README.md - Dein Projekt präsentieren
GitHub zeigt die README.md automatisch auf der
Repository-Startseite
an. Das ist
deine Chance, dein Projekt vorzustellen.
Was rein sollte
# Projektname
Kurze Beschreibung was das Projekt macht.
## Features
- Feature 1
- Feature 2
- Feature 3
## Installation
```bash
npm install
npm start
```
## Verwendung
Wie benutzt man das Projekt?
## Technologien
- HTML5
- CSS3 / Sass
- JavaScript
- Node.js
## Lizenz
MIT License
Markdown-Basics
# H1 Überschrift
## H2 Überschrift
### H3 Überschrift
**fett**
*kursiv*
`inline code`
- Aufzählung
- Noch ein Punkt
1. Nummeriert
2. Noch eins
[Link-Text](https://url.com)

GitHub Pages - Kostenlos hosten
GitHub kann deine statische Website kostenlos hosten. Perfekt für Portfolio-Seiten, Dokumentation oder Projekte wie DevPanicZone.
Einrichten
- Repository auf GitHub öffnen
- Settings (oben rechts im Repo)
- Links: "Pages"
- Source: "Deploy from a branch"
- Branch: "main" (oder "master")
- Folder: "/ (root)" oder "/docs"
- Save
Nach ein paar Minuten ist deine Seite live unter:
https://dein-username.github.io/repository-name/
Custom Domain (optional)
Du kannst auch eine eigene Domain verwenden. Unter Settings → Pages → Custom domain eintragen und DNS-Einträge setzen.
Wichtige GitHub-Konzepte
Fork
Eine Kopie eines fremden Repositories in deinen Account. Du kannst daran arbeiten, ohne das Original zu beeinflussen.
Pull Request
"Hey, ich hab was geändert, willst du das in dein Projekt übernehmen?" Wird für Zusammenarbeit und Open-Source-Beiträge genutzt.
Issues
Bug-Tracker und Feature-Requests. Wie eine To-Do-Liste für dein Projekt.
Stars
Wie "Likes". Zeigt, dass Leute dein Projekt gut finden.
Watch
Benachrichtigungen für ein Repository aktivieren.
GitHub Cheatsheet
Einmalig
# Remote hinzufügen
git remote add origin git@github.com:user/repo.git
# Erster Push
git push -u origin main
Tägliche Arbeit
# Änderungen hochladen
git push
# Änderungen holen
git pull
# Status der Remotes
git remote -v
Projekt klonen
git clone git@github.com:user/repo.git
Remote-Branches
# Alle anzeigen (lokal + remote)
git branch -a
# Remote-Branch holen
git checkout -b feature origin/feature
Häufige Probleme
"Permission denied (publickey)"
Dein SSH-Key ist nicht korrekt eingerichtet. Check:
ssh -T git@github.com
Wenn's nicht klappt, geh nochmal durch die SSH-Setup-Schritte.
"rejected - non-fast-forward"
Jemand hat vor dir gepusht. Erst pullen:
git pull --rebase
git push
"remote origin already exists"
Du hast schon ein Remote namens "origin". Entweder löschen:
git remote remove origin
git remote add origin neue-url
Oder anderen Namen wählen:
git remote add github neue-url
Versehentlich sensitive Daten gepusht
Passwörter, API-Keys etc. sind jetzt in der Git-Historie. Ändere SOFORT das Passwort/den Key. Die Datei aus der Historie zu entfernen ist kompliziert und die Daten waren kurz öffentlich.
Besser: Nutze .gitignore für .env-Dateien
von Anfang an!
Nachträglich Dateien aus Git entfernen
Du hast node_modules oder andere Dateien gepusht, die nicht ins
Repo gehören? So entfernst du sie:
# 1. Erst .gitignore aktualisieren (falls noch nicht geschehen)
# Füge z.B. node_modules/ hinzu
# 2. Dateien aus Git entfernen (bleiben aber lokal!)
git rm -r --cached node_modules/
git rm --cached .DS_Store
# 3. Commit & Push
git commit -m "Remove: node_modules aus Git entfernt"
git push
--cached entfernt die Dateien nur aus Git, nicht von deiner
Festplatte. Ohne --cached würden die Dateien auch lokal
gelöscht!
Wichtig: Die Dateien sind noch in der Git-Historie. Für ein komplett sauberes Repo müsstest du die Historie neu schreiben (kompliziert). Für die meisten Fälle reicht das Entfernen aber aus.
Best Practices
Regelmäßig pushen
Mindestens am Ende jedes Arbeitstages. So hast du immer ein Backup.
Vor der Arbeit pullen
Wenn du von mehreren Geräten arbeitest: Immer erst git pull,
dann arbeiten.
Sinnvolle .gitignore
Keine node_modules, keine .env-Dateien, keine
IDE-Einstellungen.
Gute README
Dein Repository ist nur so gut wie seine Dokumentation. Erkläre, was das Projekt macht und wie man es benutzt.
Private für Unfertiges
Wenn du noch lernst oder experimentierst: Private Repository. Du kannst es später public machen.
Branches für Features
Auch wenn du alleine arbeitest: Feature-Branches halten main sauber.
Nächste Schritte
Du hast jetzt das Grundwissen für GitHub. Ein paar Dinge zum Erkunden, wenn du tiefer einsteigen willst:
- GitHub Actions - Automatisierung (Tests, Deployments)
- Branch Protection Rules - Verhindere versehentliche Pushes zu main
- GitHub Projects - Kanban-Boards für Projektmanagement
- Collaborators - Andere zu deinem Repository einladen
Zum Üben
- Erstell ein GitHub-Konto
- Richte SSH ein
- Erstell ein leeres Repository
- Verbinde ein lokales Projekt
- Push deinen ersten Commit
- Schreib eine README.md
- Aktiviere GitHub Pages (falls statische Website)
Nach dem ersten Mal wird git push so selbstverständlich wie
Speichern.
Mehr aus Verschiedenes
Tutorials werden geladen...