Ga naar hoofdinhoud

Git-branch verwijderen: zo haal je lokale en externe branches weg

Deze gids legt uit hoe je branches in Git verwijdert — lokaal en extern — met best practices om per ongeluk dataverlies te voorkomen.
Bijgewerkt 1 jun 2026  · 15 min lezen

Als je een actieve Git-gebruiker bent zoals ik, heb je waarschijnlijk een stapel oude branches verzameld. Sommige zijn gemerged, sommige verlaten, en sommige kun je je niet eens herinneren te hebben aangemaakt. Die branches laten liggen lijkt misschien onschuldig, maar na verloop van tijd raken ze je repository vervuild en wordt het lastiger om actief werk te volgen.

In deze gids leg ik uit hoe je Git-branches lokaal en extern verwijdert, wat de veiligste manieren zijn en welke valkuilen je in de gaten moet houden.

Wat doet het verwijderen van een Git-branch?

Git-branches zijn van nature tijdelijk. Ze geven je ruimte om aan nieuwe features, bugfixes of experimenten te werken zonder de hoofdcodebasis te verstoren. Maar zodra een branch zijn doel heeft gediend, zorgt hem laten staan alleen maar voor onnodige rommel. Branches verwijderen is wat mij betreft goed onderhoud om je Git-workflow schoon en behapbaar te houden.

Ik wil benadrukken dat een branch “verwijderen” niet hetzelfde is als je werk “wissen”. Als je een branch in Git verwijdert, wis je niet de commits, maar alleen de referentie ernaar. Zo werkt het:

  • Een lokale branch verwijderen haalt de branch uit je persoonlijke repository. Als geen enkele andere branch of tag naar die commits verwijst, kunnen ze uiteindelijk worden opgeruimd door de garbage collection van Git.
  • Een externe branch verwijderen haalt de branch uit de gedeelde repository (bijv. GitHub, GitLab, Bitbucket), waardoor die ontoegankelijk wordt voor samenwerkers. Lokale kopieën van die branch op andere machines blijven echter bestaan totdat ze handmatig worden verwijderd of bijgewerkt.

Waarom een branch verwijderen?

Een branch verwijderen is simpelweg goed onderhoud. Net zoals het verstandig is om dubbele foto’s, oude downloads en verouderde mappen te verwijderen, zijn er meerdere goede redenen om een branch te verwijderen zodra je ermee klaar bent:

  • Het houdt je repository schoon. Te veel branches, zeker verouderde, maken het lastiger om actief werk te volgen.
  • Het voorkomt verwarring. Als een branch niet meer relevant is, kan hem laten staan onduidelijkheid veroorzaken over of hij nog in gebruik is.
  • Het verbetert samenwerking. In teamomgevingen geeft het verwijderen van afgeronde feature-branches aan dat het werk klaar is en voorkomt het onnodig werk aan verouderde code.
  • Het vermindert ballast op de remote repository. Externe repositories kunnen vol raken met oude branches, waardoor het lastiger wordt voor jou (of een lezer) om de projectgeschiedenis te doorlopen.

Als je nieuw bent met Git of het eerst moet instellen voordat je branches gaat beherenes, bekijk dan de Git-installatiehandleiding voor stapsgewijze instructies.

Een lokale Git-branch verwijderen

Een lokale branch verwijderen is niet moeilijk; gelukkig is het een van de eenvoudigere Git-taken. Laten we de veiligste manier doornemen en waar je op moet letten.

Het basiscommando om een lokale branch te verwijderen

De veiligste manier om een lokale branch te verwijderen is met de vlag -d:

git branch -d <branch_name>

Houd er rekening mee dat dit commando alleen werkt als de branch volledig is gemerged in de huidige branch (meestal main of master). Als er niet-gemergede wijzigingen zijn, stopt Git je om per ongeluk dataverlies te voorkomen.

Een lokale branch geforceerd verwijderen

Als je probeert een branch te verwijderen die nog niet-gemergede wijzigingen bevat, laat Git het niet toe tenzij je forceert:

git branch -D <branch_name>

De vlag -D (let op de hoofdletter) slaat de veiligheidscontrole over en verwijdert de branch direct, of hij nu gemerged is of niet. Wees hier heel voorzichtig mee. Alle niet-gemergede werkzaamheden gaan verloren, tenzij je een back-up hebt of een andere branch naar dezelfde commits verwijst.

Controleren op niet-gemergede wijzigingen vóór verwijderen

Voordat je een branch verwijdert, is het verstandig te controleren of er nog niet-gemergede wijzigingen in staan. Dat kan met:

git branch --no-merged

Bovenstaand commando toont alle branches die niet in de huidige branch zijn gemerged. Als de branch die je wilt verwijderen in deze lijst staat, controleer dan goed of je de wijzigingen echt niet nodig hebt voordat je verdergaat.

Snel een overzicht van Git-commando’s, inclusief branches verwijderen? Download de handige Git-cheatsheet.

Een externe Git-branch verwijderen

Een externe branch verwijderen werkt net even anders dan een lokale. Omdat externe branches in gedeelde repositories staan, helpt het weghalen ervan om alles overzichtelijk te houden en te voorkomen dat verouderde branches teamworkflows in de weg zitten.

Het basiscommando om een externe branch te verwijderen

Om een branch uit een externe repository zoals GitHub, GitLab of Bitbucket te verwijderen, gebruik je:

git push origin --delete <branch_name>

Dit commando verwijdert de branch-referentie uit de externe repository, waardoor die voor anderen niet meer toegankelijk is. Lokale kopieën van de branch op andere machines worden echter niet beïnvloed — die moeten apart worden opgeschoond.

Verifiëren dat de externe branch is verwijderd

Na het verwijderen van een externe branch wil je bevestigen dat hij echt weg is. Haal eerst de laatste updates op uit de externe repository:

git fetch --prune

Dit verwijdert verouderde remote-tracking-references. Om dubbel te checken dat de branch niet meer wordt vermeld, voer je het volgende uit:

git branch -r

Bovenstaand commando toont alle resterende externe branches. Als de verwijderde branch nog steeds verschijnt, probeer dan nogmaals git fetch --prune uit te voeren of controleer of je het verwijdercommando op de juiste remote hebt toegepast.

Best practices voor het verwijderen van Git-branches

Branches verwijderen is een routineklus in Git, maar het op de juiste manier doen kan je een hoop gedoe besparen. Hier zijn enkele best practices om je repository georganiseerd te houden en fouten te voorkomen.

Voorkom te vroeg verwijderen van niet-gemergede branches

Controleer vóór het verwijderen of de branch geen niet-gemergede werkzaamheden bevat die nog nodig zijn. Als je twijfelt, check dan de status met:

git branch --no-merged

Als de branch waardevolle wijzigingen heeft die nog niet zijn gemerged, overweeg dan eerst te mergen of te archiveren in plaats van direct te verwijderen.

Verwijderen na het mergen

Zodra een feature of fix is gemerged in de hoofdbranch (main of master), is er geen reden om de oude branch te laten staan. Het verwijderen van gemergede branches voorkomt rommel en maakt inzichtelijker welke branches nog actief zijn.

Communiceer met je team

Uit hoffelijkheid in een samenwerkingsproject: vermijd het verwijderen van een branch zonder je team te informeren. Dat kan verwarring veroorzaken — of erger nog, iemands werk verstoren. Controleer vóór het verwijderen van een externe branch of niemand hem nog gebruikt. Ik stuur liever even een simpel Slack-bericht of notitie om frustratie te voorkomen.

Voor je een branch verwijdert, wil je misschien je commitgeschiedenis opschonen door commits te squashen. Leer hoe in onze Git Squash Commits-tutorial.

Veelvoorkomende problemen bij het verwijderen van Git-branches

Branches verwijderen in Git gaat meestal probleemloos, maar er zijn een paar veelvoorkomende valkuilen. Hierop moet je letten en zo pak je ze aan als ze zich voordoen.

Een branch verwijderen die niet volledig is gemerged

Als je opnieuw probeert een branch met niet-gemergede wijzigingen te verwijderen met git branch -d, houdt Git je tegen om mogelijk dataverlies te voorkomen. Dit is een failsafe. Alle niet-gemergede werkzaamheden gaan verloren als je met -D geforceerd verwijdert.

Als je een branch al hebt verwijderd en merkt dat je hem terug nodig hebt, kun je hem mogelijk herstellen met de reflog van Git:

git reflog
git checkout -b <branch_name> <commit_hash>

Hiermee kun je de branch herstellen vanaf de laatst bekende commit, zolang die nog niet volledig door garbage collection is opgeruimd.

De huidige branch verwijderen

Git laat je de branch waar je je momenteel op bevindt niet verwijderen, wat logisch is — anders zou je zonder actieve branch komen te zitten. Krijg je een foutmelding bij het verwijderen, schakel dan eerst over naar een andere branch:

git checkout main

Of, als je Git 2.23+ gebruikt:

git switch main

Zodra je op een andere branch staat, kun je de bedoelde branch veilig verwijderen.

Moet je wisselen tussen branches voordat je er een verwijdert? Onze gids over een externe branch uitchecken in Git helpt je stap voor stap.

Per ongeluk een externe branch verwijderen

Als een externe branch per ongeluk is verwijderd, kun je die (als je lokaal nog een kopie hebt) herstellen door hem opnieuw naar de remote te pushen:

git push origin <deleted_branch_name>

Dit maakt de branch opnieuw aan op de externe repository, zodat samenwerkers er weer bij kunnen. Als er geen lokale kopie bestaat, moet je mogelijk je commitgeschiedenis nalopen en de branch handmatig opnieuw aanmaken.

Waarom kan ik een Git-branch niet verwijderen?

Als het niet lukt om een branch in Git te verwijderen, kijk dan nog eens naar de veelvoorkomende issues: is hij volledig gemerged, sta je er nu zelf op, of is het een externe branch? Vanaf daar kan het aan je instellingen of permissies liggen.  

  1. Controleer eerst of je momenteel op die branch staat. Git laat je geen branch verwijderen waar je actief op werkt, dus je moet eerst naar een andere branch overschakelen. 
  2. Als dat het niet is, heeft de branch mogelijk nog niet-gemergede wijzigingen. Git beschermt branches met niet-gemergede werkzaamheden, dus tenzij je zeker weet dat je die niet nodig hebt, moet je mergen of geforceerd verwijderen met git branch -D branch-name.
  3. Als je een externe branch probeert te verwijderen, werkt een simpele git branch -d niet. Je moet in plaats daarvan git push origin --delete branch-name uitvoeren, en om oude referenties op te ruimen kun je git fetch --prune gebruiken. 
  4. Sommige repositories, vooral die op platforms als GitHub of GitLab, hebben beschermde branches die je niet kunt verwijderen zonder instellingen aan te passen. In een gedeelde repository heb je mogelijk ook de juiste permissies nodig om branches te verwijderen.

Nog steeds vast? Met git branch -v krijg je meer details over de status van de branch, zodat je kunt achterhalen wat er speelt voordat je het opnieuw probeert.

Branch-opschoning automatiseren met Git

Ik hou van goede automatisering. Handmatig branches verwijderen werkt prima, en je moet weten hoe het moet, maar er is nog een manier. Als je met veel branches te maken hebt (bijvoorbeeld in een team), kan automatisering tijd besparen en alles netter houden. Git biedt een paar manieren om branch-opschoning te stroomlijnen, zodat je rommel vermindert zonder extra moeite.

Externe branch-opschoning automatiseren

Wanneer een externe branch is verwijderd, houdt je lokale Git nog een referentie vast totdat je handmatig bijwerkt. In plaats van ze één voor één op te ruimen, kun je gebruiken:

git fetch --prune

Bovenstaand commando verwijdert automatisch lokale referenties naar branches die niet meer op de remote bestaan, zodat alles in sync blijft. Dit regelmatig draaien voorkomt dat verouderde branches zich opstapelen in je lokale repo.

Git-hooks gebruiken voor opschoning

Voor teams of grotere projecten kunnen Git-hooks helpen bij het automatiseren van branch-opschoning. Hooks zijn aangepaste scripts die op bepaalde momenten in de Git-workflow draaien, bijvoorbeeld na het mergen van een branch. Je kunt een post-merge-hook configureren om gemergede branches na een bepaalde periode automatisch te verwijderen, zodat oude branches niet onnodig blijven rondhangen.

Conclusie

Branches kunnen na verloop van tijd rommelig worden, maar een beetje “snoeien” houdt je repository schoon en je workflow efficiënt. Door het standaard te maken om gemergede branches te verwijderen, niet-gemergede branches dubbel te checken en in teamprojecten goed te communiceren, voorkom je gedoe. En als je nog een stap verder wilt gaan, helpen tools als git fetch --prune en Git-hooks om je repo schoon te houden zonder extra moeite.

Branches verwijderen is maar één stap richting het beheersen van Git. Wil je je begrip van versiebeheer verdiepen? Bekijk de cursus Intermediate Git. Werk je met GitHub-repositories, dan is een goede basis in de kernconcepten van GitHub essentieel. Leer meer in de cursus Introduction to GitHub Concepts!

FAQs

Kan het verwijderen van een branch in Git invloed hebben op mijn productiecode?

Nee, het verwijderen van een branch heeft geen invloed op productiecode zolang de branch al in je hoofdbranch (main of master) is gemerged. Als je echter een branch met niet-gemergede wijzigingen verwijdert, gaat al het werk dat nog niet in een andere branch is opgenomen verloren. Controleer altijd de mergestatus voordat je verwijdert.

Hoe voorkom ik dat mijn team per ongeluk belangrijke branches verwijdert?

Als je in een gedeelde repository werkt (GitHub, GitLab, enz.), kun je kritieke branches zoals main en develop beschermen met branch protection rules. Dit helpt om per ongeluk verwijderen en ongeautoriseerde force pushes te voorkomen. Voor lokale repositories kun je overwegen om naamconventies te gebruiken (bijv. actieve branches prefixen met wip- voor “work in progress”) om aan te geven welke nog niet verwijderd mogen worden.

Is er een manier om bij te houden wie een externe Git-branch heeft verwijderd?

Ja, in repositories die worden gehost op GitHub, GitLab of Bitbucket worden branch-verwijderingen meestal gelogd in de activiteitenfeed. Je kunt de audit logs of commitgeschiedenis van je repository bekijken om te zien wie een branch heeft verwijderd en wanneer. Voor zelfgehoste Git-repositories moet je mogelijk server-side hooks instellen om verwijderingen handmatig te volgen.

Hoe herstel ik een verwijderde Git-branch als ik mijn terminal heb gesloten?

Als je een branch hebt verwijderd en je terminal nog open is, kun je dit ongedaan maken met:

git checkout -b <branch_name> <commit_hash>

Maar als je je terminal al hebt gesloten, is git reflog de beste optie.

Dit toont een geschiedenis van recente acties, inclusief het verwijderen van branches. Zoek de laatste commit-hash van de verwijderde branch en gebruik die om de branch opnieuw aan te maken. Als de branch echter zowel extern als lokaal is verwijderd en niemand anders een kopie heeft, is herstel mogelijk niet haalbaar.

Wat is in de praktijk het verschil tussen `git branch -d` en `git branch -D`?

  • git branch -d <branch> — Veilig verwijderen. Voorkomt het verwijderen als de branch niet-gemergede wijzigingen heeft en fungeert zo als vangnet.
  • git branch -D <branch> — Geforceerd verwijderen. Het maakt niet uit of de branch niet-gemergede wijzigingen heeft — hij wordt direct verwijderd.

In de praktijk gebruik je meestal -d om te voorkomen dat je per ongeluk werk kwijtraakt. Gebruik -D alleen als je 100% zeker weet dat de inhoud van de branch niet meer nodig is.


Ashlyn Brooks's photo
Author
Ashlyn Brooks

Ashlyn Brooks is een Technical Writer, gespecialiseerd in cloudplatforms (Azure, AWS), API-documentatie en datainfrastructuur. Met meer dan zeven jaar ervaring blinkt ze uit in het vertalen van complexe concepten naar heldere, gebruiksvriendelijke content die de ontwikkelaarservaring en productadoptie verbetert.

Onderwerpen

Leer meer over Git met deze cursussen!

Cursus

Introductie tot Git

2 Hr
79.4K
Ontdek de basisprincipes van Git voor versiebeheer in je software- en dataprojecten.
Bekijk detailsRight Arrow
Begin met de cursus
Meer zienRight Arrow
Gerelateerd

blog

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer zienMeer zien