Git: Branch lokal und remote löschen (einfach erklärt)

Tutorial: So löscht du Git-Branches lokal und remote. Sicher, verständlich und ohne Fehler.

Dieser Artikel hat eine Lesedauer von 1 minute.

Git: Branch lokal und remote löschen (einfach erklärt)

Irgendwann ist jeder Feature-Branch fertig. Der Code ist gemerged, das Ticket abgeschlossen und der Branch kann weg. Spätestens dann stellt sich die Frage:

Wie lösche ich einen Git-Branch richtig, lokal und auf dem Remote-Repository?

Kurzfassung (Executive Summary)

git branch -d <branchname>               # Lokalen Branch löschen
git push -d <remote_name> <branchname>   # Remote-Branch löschen

Lokalen Branch löschen

Um einen lokalen Branch zu löschen, gibt es zwei Varianten.

Variante 1: Sicheres Löschen (empfohlen)

git branch -d <branch_name>

Löscht den Branch nur, wenn er bereits vollständig gemerged wurdeschützt davor, unabsichtlich Arbeit zu verlieren.

Die Option -d ist ein Alias für –delete und löscht den Branch nur, wenn er bereits vollständig in seinen Upstream-Branch gemergt wurde.

Variante 2: Erzwingen (mit Vorsicht)

git branch -D <branch_name>

löscht den Branch unabhängig vom Merge-Statuskann nicht gemergte Änderungen verwerfen kann nicht gemergte Änderungen verwerfen

-D ist die Kurzform von –delete –force.

Faustregel: Wenn du dir nicht sicher bist, nutze -d, nicht -D.

Wichtiger Hinweis

Du kannst nicht den aktuell ausgecheckten Branch löschen. Git gibt in diesem Fall eine Fehlermeldung aus.

Wechsle vorher z. B. zu main oder feature:

git checkout main

Remote-Branch löschen

Um einen Branch auf dem Remote-Repository (z. B. GitHub oder GitLab) zu löschen, verwendest du:

git push origin --delete <branch_name>

Ab Git Version 2.8 funktioniert auch die kürzere Schreibweise:

git push -d origin <branch_name>

Warum es zwei Schreibweisen gibt

Ältere Git-Versionen nutzten diese Syntax:

git push origin :<branch_name>

Sie funktioniert zwar noch, ist aber deutlich weniger lesbar. Heute solltest du immer –delete oder -d verwenden, wenn möglich.

Beide Varianten tun dasselbe.

letzten commit rückgängig machen

Wenn du den letzten Commit rückgängig machen möchtest habe ich folgenden Artikel für dich: Git: Letzte lokale Commits rückgängig machen (ohne Push)