Gerade bin ich über eine kleine aber durchaus interessante Problematik gestolpert. Ich liebe Git und nutze es eigentlich überall. Auch bin ich ein grosser Fan von Git Flow als Branching Model und habe damit einige Branches, die so in der Welt herum geistern. Und genau damit hatte ich gerade die folgende Szenerie:
Einer meiner Branches, genannt feature/rest-fronted-get-users, existierte sowohl in meinem Remote als auch auf zwei meiner Rechner. Nachdem das Feature fertig implementiert war, wurde alles aus dem Branch in meinen develop integriert und sowohl lokal auf Rechner A als auch vom Remote gelöscht. Aber da gab es ja noch meinen zweiten Rechner, Rechner B. Der kannte den Branch noch, war lokal sogar noch darauf „geeicht“.
Das Wechseln in den develop Branch ist ja mit
git checkout develop
kein Problem. Aber Git glaubte immer noch den Branch auf dem Remote zu sehen.
Die Lösung ist, wie so oft mit Git, extrem simpel. So simpel, dass ich sie bestimmt wieder sofort vergesse. Also schreibe ich sie hier einfach nieder. Und wer weiß, vielleicht hilft es ja dem Einen oder Anderen auch weiter.
Und hier ist sie: Einfach im lokalen Git Repository folgende Befehle ausführen:
git branch -d feature/rest-frontend-get-users git remote prune origin
Der erste Befehl löscht den Branch lokal. Und der Zweite räumt dann (u.a.) die Liste der Branches auf.
Kommentar verfassen