Select Page

Wie entferne ich nicht mehr benötigte Zweige?

by | Aug 13, 2013 | NETWAYS

Wer seinen Quelltexte und Konfigurationen mit git verwaltet, hat in der Regel schnell eine große Anzahl an Branches/Zweigen angelegt. Viele davon sind nutzlos und überflüssig, weil diese bereits in den Hauptzweig übernommen wurden. Hat man zudem noch viele fleißige Kollegen, kommt es schon vor, dass ein git branch -a mehrere Seiten Ausgabe produziert und man ohne grep & Co. keinen Überblick mehr hat.
git liefert natürlich ein Kommando, welches einem alle bereits zusammengeführte Zweige anzeigt, und somit kann man schnell und einfach alle nicht mehr benötigten Zweige löschen.
Lokal angelegte Zweige werden wie folgt gelöscht:

git branch --merged master | grep -vE "(\*|testing|development)" | xargs -n1 git branch -d

In diesem Beispiel werden einzelne Zweige mit grep ausgefiltert, da ich testing und development nicht löschen will. Zudem kann der aktuelle Zweig * nicht gelöscht werden, weshalb dieser ebenfalls aus der Liste entfernt wird.
Für remote-Zweige müssen die Befehle etwas angepasst werden:

git branch -r --merge master | grep -vE "(origin\/master|origin\/testing)" | sed 's/ *origin\///' | xargs -I% git push origin :%

Zwei Befehle und schon sind die git-Zweige aufgeräumt. Mit einem git-Hook an der richtigen Stelle kann man diese auch noch automatisch ausführen.

Achim Ledermüller
Achim Ledermüller
Senior Manager Cloud

Der Exil Regensburger kam 2012 zu NETWAYS, nachdem er dort sein Wirtschaftsinformatik Studium beendet hatte. In der Managed Services Abteilung ist er für den Betrieb und die Weiterentwicklung unserer Cloud-Plattform verantwortlich.

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

More posts on the topic NETWAYS

The Countdown for DevOpsDays Berlin 2024 is on!

It’s just one week to go until DevOpsDays Berlin is about to start. The organizing team’s preparations are in full swing, and they can’t wait to finally welcome you there. Let's build up the excitement together!   A Fantastic Program The two-day schedule provides...

Vielseitige Einblicke der Abteilungswoche bei NETWAYS

In der modernen Arbeitswelt ist es wichtig, über den eigenen Tellerrand hinauszuschauen und ein Verständnis für verschiedene Bereiche eines Unternehmens zu entwickeln. Genau aus diesem Grund wurde bei NETWAYS die Idee der Abteilungswoche geboren. In dieser Woche hatte...