Skip to content

Mittwoch, 2026-02-18_Git_UDEMY

1) Grundidee von Git

Git ist ein Versionsverwaltungssystem.
Es speichert nicht Dateien mehrfach, sondern Änderungen zwischen Versionen.

Merksatz:

Git speichert Snapshots und verfolgt Änderungen – keine Datei-Duplikate.


2) Zentrale Begriffe

Working Directory (Arbeitsverzeichnis)

Dein Projektordner mit allen Dateien (z. B. index.html, style.css etc.).

Repository (.git-Ordner)

Versteckter Ordner, der automatisch durch git init erstellt wird.
Hier passiert die gesamte Versionsverwaltung.

Das Repository enthält u. a.:

  • Staging Area (Index)
  • Commits (Snapshots)
  • Branch-Informationen

3) Git-Projekt initialisieren

git init

Erstellt den versteckten .git-Ordner → Projekt wird Git-Repository.

Status prüfen:

git status


4) Dateien tracken & Commit erstellen

Datei zur Staging Area hinzufügen

Einzelne Datei:

git add datei.txt

Alle Dateien:

git add .

Commit erstellen

git commit -m "Beschreibung der Änderung"

Commit = Snapshot des aktuellen Zustands.


5) Commit-Historie anzeigen

git log

Zeigt: - Commit-ID (Hash) - Autor - Datum - Commit-Message

Jeder Commit hat eine eindeutige ID.


6) Branches

Standardbranch:
master (oder main, je nach Konfiguration)

Branch anzeigen:

git branch

Neuen Branch erstellen

git branch neuer-branch

Oder direkt erstellen + wechseln:

git checkout -b neuer-branch

Ab Git 2.23:

git switch -c neuer-branch

Zwischen Branches wechseln

git checkout branchname

oder moderner:

git switch branchname


7) Merge (Branches zusammenführen)

Wenn ein Feature-Branch fertig ist:

git merge branchname

Wichtig: Du musst im Zielbranch stehen (z. B. master).


8) HEAD & Detached HEAD

Zeigt immer auf den aktuellen Commit eines Branches.

Detached HEAD

Passiert, wenn du direkt einen Commit auscheckst:

git checkout commit-id

Du arbeitest dann nicht mehr auf einem Branch.

Lösung: Neuen Branch erstellen:

git branch neuer-branch commit-id

Dann normal weiterarbeiten.


9) Änderungen rückgängig machen

Unstaged Änderungen verwerfen (tracked files)

Klassisch:

git checkout -- datei.txt

Modern:

git restore datei.txt


Untracked Dateien löschen

Testlauf:

git clean -dn

Löschen:

git clean -df


Staged Änderungen zurücknehmen

Klassisch:

git reset datei.txt

Modern:

git restore --staged datei.txt


10) Commits rückgängig machen

Soft Reset (Commit löschen, Änderungen behalten)

git reset --soft HEAD~1

Standard Reset (Commit löschen, Änderungen unstaged)

git reset HEAD~1

Hard Reset (alles löschen!)

git reset --hard HEAD~1

Achtung:
Hard Reset entfernt Commit + Staging + Working Directory Änderungen.


11) Branch löschen

git branch -D branchname

12) .gitignore

Datei im Root-Verzeichnis:

.gitignore

Beispiele:

Alle Log-Dateien ignorieren:

*.log

Ordner ignorieren:

webapp/

Bestimmte Datei trotzdem erlauben:

!important.log


Zusammenfassung

Wichtige Kernkonzepte:

  • Working Directory
  • Repository (.git)
  • Staging Area
  • Commit (Snapshot)
  • Branch
  • HEAD
  • Merge
  • Reset / Restore
  • .gitignore

Git basiert auf:

Änderungen tracken → Committen → Versionen verwalten → Branches für Features nutzen.

Diese Grundlagen sind essenziell für: - Teamarbeit - GitHub - CI/CD - Professionelle Softwareentwicklung