Ga naar hoofdinhoud

Git status: zo houd je veranderingen in je project met vertrouwen bij

Leer hoe je het commando git status gebruikt om de staat van je repository te monitoren. Deze gids is perfect voor beginners en starters die een geoptimaliseerde Git‑workflow willen.
Bijgewerkt 2 okt 2026  · 15 min lezen

Verken met AI

ChatGPTClaudePerplexity

Als je aan een complex Git-project werkt, is het makkelijk om het overzicht te verliezen over welke bestanden zijn gewijzigd, gestaged of nog ongetraceerd zijn. Daar komt git status om de hoek kijken. Deze essentiële Git-opdracht geeft een helder en compleet snapshot van de huidige staat van een repository—met de nadruk op welke bestanden zijn veranderd, wat klaarstaat om te committen en wat nog aandacht nodig heeft.

Of je nu mergeconflicten oplost, gestagede wijzigingen bekijkt of zeker wilt weten dat je niets vergeet voordat je commit, git status geeft je het overzicht om georganiseerd te blijven.

In deze gids leg ik elke sectie van de git status-output uit en bespreek ik geavanceerde aanpassingen, zodat je meer grip krijgt op je versiebeheer-workflow.

Wat is Git status?

De opdracht git status geeft een realtime samenvatting van de staat van je Git-repository. Concreet vergelijkt het de werkdirectory (je lokale bestanden) en de staging area (ook wel de index) met de laatst gecommit snapshot. Zo zie je welke bestanden zijn aangepast, welke wijzigingen zijn gestaged en klaar om te committen, en welke nieuwe bestanden nog ongetraceerd zijn.

Door git status uit te voeren, kunnen ontwikkelaars controleren of de juiste wijzigingen worden gestaged of gecommit, over het hoofd geziene aanpassingen opvangen en voorkomen dat onvolledige updates worden geïntroduceerd. Dit is vooral waardevol bij het beheren van meerdere branches of het oplossen van mergeconflicten, omdat het precies aangeeft wat Git wel en niet bijhoudt.

Begrijpen hoe git status de interactie weerspiegelt tussen de working tree, staging area en repositorygeschiedenis is cruciaal om Git effectief te gebruiken en veelgemaakte fouten te vermijden.

Het bovenstaande diagram laat de relatie zien tussen de werkdirectory, staging area en repository (commitgeschiedenis)—en hoe git status daarin past:

  • Niet-gestagede wijzigingen (aangepaste bestanden in je werkdirectory) verschijnen als "Changes not staged for commit".
  • Gestagede wijzigingen (bestanden toegevoegd aan de index met git add) verschijnen als "Changes to be committed".
  • Ongetraceerde bestanden (nieuwe bestanden die Git nog niet kent) worden ook vermeld, met de vraag of je ze wilt toevoegen of negeren.
  • Als je midden in een merge zit, vertelt git status je ook over conflicten en welke stappen je vervolgens moet nemen.

Voorbeeldoutput van git status:

$ git status

On branch feature/login
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   src/auth.js

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   src/utils.js

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        src/new-feature.js

Voor een breder begrip van Git en de rol ervan in versie-beheer, bekijk deze complete gids over Git.

Hoe gebruik je Git status

Hier is een stapsgewijze aanpak om git status effectief in je workflow te benutten.

Heb je Git nog niet geconfigureerd? Deze set-upgids loodst je door installatie en initiële configuratie op verschillende systemen.

Basisgebruik van git status

  • Open je terminal:

Gebruik je favoriete terminal of command-line interface. Zo kun je direct Git-opdrachten uitvoeren en in realtime de staat van je repository bekijken.

  • Navigeer naar je projectdirectory:

Gebruik het commando cd om naar de map te gaan waar je Git-project staat.

cd /path/to/your/project
  • Voer git status uit:

Voer het volgende commando uit zodra je in je projectdirectory bent.

git status

Zoals we eerder zagen, geeft Git een output terug die doorgaans het volgende bevat:

  • De huidige branchtitel.
  • Een lijst met gestagede wijzigingen die klaar zijn om te committen.
  • Een lijst met gewijzigde maar niet-gestagede bestanden.
  • Eventuele ongetraceerde bestanden—nieuwe bestanden die nog niet aan Git zijn toegevoegd.

De korte weergave gebruiken

Heb je snel een snapshot nodig zonder extra details, dan is de korte weergave ideaal:

git status --short

Deze beknopte weergave toont elk bestand op één regel met status­symbolen. Handig wanneer je op een specifieke wijziging wilt scannen of dit commando in een script integreert.

Voorbeeldoutput:

 M index.html
A  new-script.js
?? temp.txt

De output interpreteren:

  • Het eerste teken geeft de status in de staging area aan.
  • Het tweede teken geeft de status in de werkdirectory aan.

Code

Betekenis

M

Gewijzigd

A

Toegevoegd

D

Verwijderd

??

Ongetraceerd bestand

MM

In beide stadia gewijzigd

AM

Toegevoegd en daarna gewijzigd

De optie -u in git status begrijpen

Met de optie -u (afkorting van --untracked-files) bepaal je hoe ongetraceerde bestanden in je output worden weergegeven, wat relevant kan zijn in projecten met veel gegenereerde bestanden. Dit betekenen de modi:

  • normal (de standaard)

 Toont ongetraceerde bestanden in een standaard, ruimte-efficiënte weergave.  

Voorbeeld: 

git status -u normal

Dit is het standaardgedrag dat de meeste ontwikkelaars zien bij het uitvoeren van git status.

  • all

Somt elk ongetraceerd bestand op—zelfs die standaard genegeerd worden.  

Voorbeeld: 

git status -u all

Deze modus geeft volledige zichtbaarheid, wat nuttig kan zijn bij het debuggen van bestandsgeneratie of het beoordelen wat via .gitignore wordt uitgesloten.

  •  no

Verbergt ongetraceerde bestanden, zodat je je uitsluitend kunt richten op wijzigingen in bestanden die al door Git worden gevolgd. 

Voorbeeld:

git status -u no

In een van mijn grotere projecten—een Node.js-toepassing met een complex buildproces—raakte de output van git status vervuild met tijdelijke bestanden, caches en buildartefacten. Met de optie -u no kon ik me uitsluitend richten op wijzigingen in getraceerde bestanden, zonder afleiding door tijdelijke of automatisch gegenereerde bestanden.

De output aanpassen met --porcelain

Voor scripting of automatisering is voorspelbare output essentieel. De optie --porcelain levert een schone, stabiele, machineleesbare weergave van git status, ideaal voor gebruik in maatwerktools of CI/CD-workflows:

git status --porcelain

Deze modus lijkt op de korte weergave (--short), maar garandeert consistente output tussen Git-versies en -configuraties. In tegenstelling tot de standaard git status, die afhankelijk van gebruikersinstellingen extra regeleinden, hints of kleur kan bevatten, stript --porcelain al die opmaak weg—zodat scripts de output betrouwbaar kunnen parsen.

Volgende stappen na het uitvoeren van Git status

Na het uitvoeren van git status en het analyseren van de output, is het tijd om je volgende stap te bepalen—of dat nu het stagen van bestanden is, het committen van updates of het opschonen van je werkdirectory. Zo pak je dat aan.

Bestanden stagen voor een commit

Met stagen bereid je wijzigingen voor om ze in de volgende commit op te nemen. Je kunt losse bestanden stagen of alles in één keer.

  • Een specifiek bestand stagen:

Gebruik dit wanneer je precies wilt bepalen wat gecommit wordt.

git add <file-name>
  • Alle wijzigingen stagen:

Dit omvat gewijzigde en nieuw toegevoegde bestanden in de huidige map.

git add .
  • Alle wijzigingen in getraceerde bestanden stagen (nieuwe ongetraceerde bestanden uitsluiten):
git add -u

Ik raad aan om de wijzigingen met git status of git diff zorgvuldig te bekijken voordat je staged, zodat je niet per ongeluk ongewenste bestanden meeneemt. In combinatie met het git diff-commando krijg je nog diepere inzichten in wat er in je bestanden is veranderd.

Wijzigingen committen

Na het stagen van je wijzigingen is de volgende stap een commit maken. Een duidelijke en beschrijvende commitboodschap legt niet alleen vast wat er is veranderd, maar ook waarom de wijziging is doorgevoerd—wat het makkelijker maakt om de projectgeschiedenis in de tijd te begrijpen.

git commit -m "Describe your changes here"

Best practices voor commitboodschappen:

  • Gebruik de gebiedende wijs (bijv. “Fix login bug”, niet “Fixed login bug”).
  • Houd de samenvattingsregel indien mogelijk onder 50 tekens.
  • Gebruik indien nodig een meerregelige boodschap (git commit zonder -m) om de samenvatting en een uitgebreide uitleg te scheiden.

Ik heb gemerkt dat een minuut extra om een zinvolle commitboodschap te schrijven later uren kan schelen tijdens reviews of debuggen. Zodra je wijzigingen zijn gereviewd, kun je overwegen commits te squashen om je Git-geschiedenis op te schonen.

Omgaan met ongetraceerde bestanden

Ongetraceerde bestanden kunnen je git status-output vervuilen, vooral in projecten met buildartefacten, logs of dependency-mappen. Als er bestanden of mappen zijn die je nooit wilt tracken, kun je ze uitsluiten door patronen toe te voegen aan een .gitignore-bestand in de root van je repository.

# Ignore dependency folders and log files
node_modules/
*.log

# Ignore system files
.DS_Store
Thumbs.db

Zo zorg je dat alleen relevante bestanden in je repository staan en blijft de output van git status schoon en gefocust. Wanneer je achtergebleven ongetraceerde bestanden uit je werkdirectory wilt verwijderen, is git clean ook een handig hulpmiddel.

Status regelmatig bekijken

git status vaak uitvoeren is een simpele maar krachtige gewoonte die helpt een schone en gecontroleerde ontwikkelworkflow te behouden. Je voorkomt veelgemaakte fouten zoals onvolledige wijzigingen committen of ongetraceerde bestanden over het hoofd zien door de status van je werkdirectory en staging area regelmatig te controleren—zeker vóór commits, branchwissels of merges.

Ik heb deze stap nu in mijn dagelijkse routine opgenomen, wat het aantal fouten in mijn commithistorie drastisch heeft verminderd.

Veelvoorkomende problemen met Git status oplossen

Zelfs met de eenvoud ervan kan git status soms overweldigende of verwarrende informatie geven. Hier zijn een paar veelvoorkomende problemen en hoe je ze aanpakt.

Ongewenste ongetraceerde bestanden

In grote projecten, vooral bij gebruik van diverse buildtools, kun je veel bestanden zien die je nooit wilde tracken. Als deze verschijnen, controleer dan je .gitignore-instellingen en verwijder ze indien nodig uit tracking met:

git rm --cached <file-name>

Na het bijwerken van je .gitignore en het gebruik van git rm --cached, voer je git status opnieuw uit om te verifiëren dat het bestand niet langer wordt getrackt of onnodig verschijnt.

Overweldigende output

In projecten met veel bestanden—vooral die logbestanden, caches of tijdelijke assets genereren—kan de output van git status rumoerig en lastig te scannen worden. Daardoor is het moeilijk om je te richten op de betekenisvolle wijzigingen die aandacht vragen.

In dat geval kun je een beknopte samenvatting met één regel per bestand tonen:

git status --short

Of ongetraceerde bestanden volledig uit de output verbergen:

git status -u no

Samen maken deze opties git status gerichter en beter behapbaar—zeker in grotere codebases of geautomatiseerde workflows.

Conclusie

Kortom, git status is een onmisbaar hulpmiddel dat je een realtime venster geeft op de gezondheid van je repository. Door de standaardweergave, de korte weergave en geavanceerde opties zoals de -u-vlag te beheersen, kun je je Git-workflow stroomlijnen en veelvoorkomende valkuilen vermijden. Experimenteer met deze modi in je projecten en merk hoe de helderheid in het beheren van wijzigingen je ontwikkelproces versnelt.

Als je nieuw bent met Git, wordt het begrijpen van git status nog krachtiger in combinatie met git init, de opdracht die repositories initialiseert. Als je dat nog niet hebt gedaan, bekijk dan mijn Git Init-tutorial om te leren hoe je een repository vanaf nul opzet.

En als je je Git-vaardigheden verder wilt verdiepen, bekijk dan deze DataCamp-cursussen:

  • Intermediate Git – Versterk je skills met technieken voor branching, mergen en het oplossen van conflicten.
  • GitHub Foundations – Leer Git met GitHub te integreren voor samenwerkingsprojecten.

Happy coding—en op naar perfecte synchronisatie met je repository!

FAQs

Hoe verschilt git status van git diff?

Waar git status een samenvatting van wijzigingen toont, laat git diff de daadwerkelijke inhoudsverschillen tussen bestanden zien, voor een meer gedetailleerde vergelijking.

Kan ik de output van git status aanpassen?

Ja, met opties zoals --short, --porcelain en -u kun je de output afstemmen om compacter of scriptvriendelijker te zijn, afhankelijk van je behoeften.

Wat is het verschil tussen gestagede en niet-gestagede wijzigingen in Git?

Gestagede wijzigingen zijn toegevoegd aan de index en klaar om te committen, terwijl niet-gestagede wijzigingen nog in je werkdirectory staan en niet voor een commit zijn gemarkeerd.

Hoe negeer ik bestanden die in git status verschijnen?

Je kunt patroonregels toevoegen aan een .gitignore-bestand om te voorkomen dat bepaalde bestanden (zoals logs of buildartefacten) als ongetraceerd in git status verschijnen.

Waarom blijven ongetraceerde bestanden in git status verschijnen?

Ongetraceerde bestanden zijn bestanden die niet aan de Git-index zijn toegevoegd. Ze blijven verschijnen als je ze niet expliciet negeert in .gitignore of staged met git add.

Hoe helpt git status om slechte commits te voorkomen?

Door git status uit te voeren vóór je commit, kun je alle gestagede en niet-gestagede wijzigingen bekijken, zodat je geen bestanden mist of per ongeluk iets onvolledigs commit.

Is git status nuttig bij het oplossen van mergeconflicten?

Zeker. git status markeert conflicten en geeft aan hoe je ze oplost voordat je een merge afrondt.

Hoe vaak moet ik git status gebruiken in mijn workflow?

Vaak! Door git status te gebruiken vóór het stagen, committen of wisselen van branch blijf je georganiseerd en voorkom je kostbare fouten.


Khalid Abdelaty's photo
Author
Khalid Abdelaty
LinkedIn

Ik ben een data-engineer en communitybouwer die werkt aan datapijplijnen, cloud en AI-tools, en tegelijkertijd praktische, impactvolle tutorials schrijft voor DataCamp en beginnende developers.

Onderwerpen
Git

Leer meer over Git met deze cursussen!

Cursus

Introductie tot Git

2 uur
102.7K
Ontdek de basisprincipes van Git voor versiebeheer in je software- en dataprojecten.
Bekijk detailsRight Arrow
Start Cursus
Meer bekijkenRight 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 BekijkenMeer Bekijken