QuickTipp: Löschen lokaler Git Branches ohne Remote Branch
18. April 2017 Web-Entwicklung von Eric Kubenka
In meinem täglichen Umfeld arbeite ich viel mit /feature
-Branches in Git und bin dabei für das Review von Pull-Requests verantwortlich. Die neuen, lokal verifizierten Features, lassen nach der anschließenden Genehmigung des Rull-Requests meist einen lokalen und nicht weiter genutzten Branch zurück, da das Feature bereits nach development
oder master
gemerged wurde.
Nach 10-20 Features hat man dann eine ganze Menge ungenutzter lokaler Branches, welche keinen zugehörigen Remote-Branch mehr besitzen. Um diese Branches zu entfernen gibt es eine kurze Kommando-Kette.
In diesem Zuge möchte ich kurz auf die Möglichkeiten des Löschen von Remote/Local Branches in Git eingehen.
Lokalen Branch löschen
Lokale Branches lasses sich leicht mittels folgendem Befhel entfernen.
git branch -d feature/xyz
Remote Branch löschen
Remote-Branches lassen sich durch das hinzufügen von -r
entfernen.
git branch -dr origin/feature/xyz
Lokale Branches ohne Remote Branch löschen
Um lokale Branches ohne zugehörigen Remote-branch zu entfernen, benötigt man eine kleine Kommandokette. git branch -vv
liefert eine detaillierte Liste aller Branches mit ihren Remote-Beziehungen. Mittels grep
wird die Liste auf gone
(entfernt)-e Branches gefiltert und anschließend werden diese Branches gelöscht.
git fetch -p
git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -d
Einen Kommentar schreiben