Zum Hauptinhalt springen

Git Referenz

Wichtigste Befehle

AktionGit-BefehlErklärung
Repository erstellengit initNeues Git-Projekt starten
Datei hinzufügengit add <datei>Datei für Commit vormerken
Commit erstellengit commit -m "msg"Änderungen speichern
Alle Änderungen committengit commit -am "msg"Alle Änderungen in bekannten Dateien speichern
Änderungen anzeigengit status / git logÜberblick behalten
Lokale Änderungen pushengit push origin <branch-name>Nach GitHub hochladen
Remote Änderungen pullengit pull origin <branch-name>Von GitHub herunterladen
Branch erstellengit switch -c <branch> oder
git checkout -b <branch>
Getrennten Entwicklungszweig anlegen
Branch wechselngit switch <branch> oder
git checkout <branch>
In Entwicklungszweig wechseln
Branch mergengit merge <branch>Änderungen in den aktuellen Entwicklungszweig zusammenführen
Datei wiederherstellengit restore <datei>Rückgängig machen

SSH auf Ubuntu-VM einrichten

Nach jedem Starten der VM nötig
  • Dies muss jedes Mal nach dem Starten der VM gemacht werden, da die VM beim Stoppen alle Daten verliert.
  • Alte SSH Keys können aus GitHub wieder entfernt werden.
nur auf Linux
  • Dies geht nur auf einer Linux machine, wie z.B. der VM zum Modul
  1. Ein Terminal öffnen
  2. SSH-Key generieren, folgenden Befehl ausführen.
    ssh-keygen -t ed25519 -C "name.vorname@bbzbl-it.ch"
  3. Inhalt der Datei ~/.ssh/id_ed25519.pub kopieren. SSH-Public-Key
  4. SSH-Public-Key auf Github unter Account -> Settings -> SHH and GPG keys -> hinzufügen.
  5. Git Konfigurieren
    git config --global user.name "Vorname Name"
    git config --global user.email "name.vorname@bbzbl-it.ch"
  6. Repository Klonen
    git clone <git-repository-ssh-url>

Use-Cases

🧱 1. Neues Git-Repository erstellen

Use-Case: Du willst mit Versionskontrolle in einem neuen Projekt starten.

git init

Ergebnis:
Git legt einen versteckten Ordner .git an. Ab jetzt kannst du Änderungen verfolgen.

📥 2. Ein vorhandenes Repository klonen

Use-Case: Du willst an einem bestehenden Projekt mitarbeiten.

git clone <repository-url>

Beispiel:

git clone https://github.com/benutzer/projekt.git

Ergebnis:
Du bekommst eine Kopie des Repositories (inklusive Branches und Commit-Historie) auf deinen Rechner.

✍️ 3. Dateien zu Git hinzufügen

Use-Case: Du hast neue Dateien erstellt oder bestehende geändert.

git add <dateiname>

Beispiel:

git add index.html style.css

Oder alle Änderungen:

git add .

Ergebnis:
Dateien werden zur Staging Area hinzugefügt – also für den nächsten Commit vorbereitet.

💾 4. Änderungen committen

Use-Case: Du möchtest eine Version „speichern“.

git commit -m "Beschreibung der Änderung"

Beispiel:

git commit -m "Fix: Navigation für mobile Ansichten angepasst"

Ergebnis:
Deine Änderungen werden lokal dauerhaft festgehalten – mit einer aussagekräftigen Nachricht.

🔁 5. Änderungen mit dem Remote-Repository synchronisieren

Use-Case: Du willst deine lokalen Commits ins zentrale Repository übertragen.

Hochladen (push):

git push origin main

Herunterladen (pull):

git pull origin main

Ergebnis:
Deine lokalen und entfernten Repositories bleiben synchron.

🌿 6. Mit Branches arbeiten

Use-Case: Du willst getrennt vom Hauptzweig neue Features entwickeln.

git branch feature-login
git checkout -b feature-login

Oder moderner:

git switch -c feature-login

Ergebnis:
Du arbeitest auf einem eigenen Entwicklungszweig, ohne den Hauptcode zu beeinflussen.

🔗 7. Änderungen zusammenführen (merge)

Use-Case: Du möchtest deinen Branch in den Hauptzweig übernehmen.

git checkout main
git merge feature-login

Ergebnis:
Änderungen aus „feature-login“ werden in „main“ integriert.
Eventuelle Konflikte müssen manuell gelöst werden.

📜 8. Stand des Repositories prüfen

Use-Case: Du willst sehen, was sich geändert hat.

git status

Commit-Historie anzeigen:

git log

🧹 9. Dateien ignorieren

Use-Case: Bestimmte Dateien (z. B. temporäre oder Build-Dateien) sollen nicht ins Repository.

Erstelle eine .gitignore-Datei:

node_modules/
.env
*.log

Ergebnis:
Git ignoriert diese Dateien künftig automatisch.

🧩 10. Änderungen rückgängig machen

Use-Case: Du willst einen Fehler korrigieren oder etwas zurücksetzen.

Einzelne Datei wiederherstellen:

git restore <dateiname>

Zu einem früheren Commit springen:

git checkout <commit-id>

SSH Key einrichten

Um ein eigenes Git-Repository von GitHub lokal zu klonen, muss man sich authentifizieren. Grundsätzlich gibt es zwei Arten, um auf ein Repository zuzugreifen, https und ssh. Da https bei jedem git pull und git push den Benutzer und das Passwort abfragt, empfehle ich jedem das Repository via ssh zu klonen. Damit kann man ohne user und passwort arbeiten. Man benötigt jedoch einen ssh-key den man auf GitHub registrieren muss.

Aufgabe

Bitte folgt den unten stehenden Anleitungen von GitHub, um einen ssh-key zu erstellen und auf GitHub zu registrieren.

Alle die bereits einen Key haben können direkt hier fortfahren

Es gibt einen Windows-Tab auf den Webseiten 😉

generate-ssh-key-windows

Repository lokal klonen

Nachdem Ihr eine ssh-key generiert und in GitHub hinterlegt habt, sollte es möglich sein, euer Repository lokal zu klonen.

  1. Unter Code Das grüne Dropdown <> Code öffnen.
  2. Die SSH Url kopieren.
  3. oder, sofern GitHub Desktop. installiert, Open with GitHub Desktop wählen

bg right fit

In Bash klonen

Danach könnt ihr lokal folgender git Befehl ausführen.

git clone kopierte-ssh-url-zum-repo
ich würde es so machen, dann lernt ihr gerade die git Befehle.

In VS Code öffnen

  1. File -> Open folder.
  2. Das frisch geklonte Repository auswählen.
  3. Es sollte ungefähr wie rechts aussehen.

bg right fit

Direkt in VS Code klonen

Alternativ könnt Ihr auch in VS Code das Repository klonen.

In Kürze:

  • Die Kommando-Pallete öffnen mit Ctrl+Shift+P (Windows) oder Command+Shift+P (mac).
  • Nach "Git: clone" suchen
  • Bestätigen, die kopierte SSH-URL einfügen und dem Wizard folgen.