Git commands: praktische gids voor developers

Tips en trucs over het web, digitale trends en online marketing

Terug naar het overzicht

Git commands, de ruggengraat van moderne softwareontwikkeling

Bij Funkhaus bouwen we dagelijks aan websites, webapps en slimme marketingflows. Daarin vertrouwen we op Git om ons werk veilig vast te leggen, soepel samen te werken en zonder risico terug te keren naar een vorige versie wanneer dat nodig is.

In dit kennisbankartikel nemen we je mee in wat Git precies is, waarvoor je het gebruikt en waarom het zo belangrijk is in onze manier van werken. Daarna delen we een uitgebreide lijst met handige Git commands, inclusief voorbeelden en tips die wij zelf toepassen in onze projecten.

(Lees verder onder de foto.)
Git commands: praktische gids voor developers

Heb je vragen over dit artikel?

Plan een gratis adviesgesprek
Stuur een mailtje 👋

Wat is Git?

Git is een gedistribueerd versiebeheersysteem: elke ontwikkelaar beschikt lokaal over de volledige codegeschiedenis. Dat maakt operaties zoals commits, diff en branchebeheer extreem snel en betrouwbaar. In plaats van één centrale bron bewaar je lokale snapshots (commits) die je later naar een remote zoals GitHub, GitLab of Bitbucket kunt pushen. Voor een volledige referentie kun je terecht bij de officiële documentatie van Git en het gratis boek Pro Git.

Waarom gebruik je Git en waarom is het belangrijk?

Git maakt samenwerken voorspelbaar: meerdere mensen kunnen tegelijk aan features werken in gescheiden branches zonder elkaars werk te overschrijven. Elke commit bevat wie iets heeft veranderd en waarom, wat belangrijk is voor traceerbaarheid en debugging. Git ondersteunt workflows met code reviews, CI/CD-pipelines en rollback-mogelijkheden, zodat fouten snel opgespoord en hersteld worden. Integratie met tools zoals GitHub Actions en GitLab CI helpt om kwaliteit te automatiseren tijdens elke push. Zie bijvoorbeeld de GitHub Actions-documentatie voor voorbeelden van CI-workflows: https://docs.github.com/actions

Kernconcepten in één zin

  • Repository: de projectmap met de .git directory
  • Commit: een snapshot van je code inclusief metadata
  • Branch: een verwijzing naar een reeks commits
  • Remote: een externe repository (bv. origin)
  • Staging area (index): tussenlaag tussen working tree en commit

Handige git-commands en wat ze doen

Onderstaand vind je een uitgewerkte lijst met commands die in de praktijk het meest nuttig zijn. Voor elk command leg ik uit wat het doet, wanneer je het gebruikt en geef ik een voorbeeld.

git init
Initialiseert een nieuwe Git-repository in de huidige map. Gebruik dit als je een project lokaal wilt beginnen met versiebeheer.

Tip: Voeg meteen een .gitignore toe met bestanden die niet onder versiebeheer moeten (build-artifacts, credentials, node_modules).

git clone
Maakt een lokale kopie van een remote repository. Hiermee haal je de volledige geschiedenis binnen.

git clone https://github.com/organisatie/project.git

Tip: Gebruik –depth voor een shallow clone als je alleen de laatste geschiedenis nodig hebt.

git status
Toont welke bestanden gewijzigd zijn, welke staged staan en welke ontracked zijn. Dit is vaak het eerste commando dat je uitvoert.

git add
Plaats wijzigingen in de staging area zodat ze onderdeel worden van de volgende commit. Je kunt individuele bestanden of alles toevoegen.

git add index.html
git add -A # alle wijzigingen

Tip: Gebruik kleine, logische commits door telkens gerelateerde wijzigingen te adden en te committen.

git commit
Maak een snapshot van gestage wijzigingen. Schrijf duidelijke commit messages.

git commit -m “fix: responsive header en accessibility improvements”

Tip: Hanteer conventies zoals Conventional Commits voor consistente messages: https://www.conventionalcommits.org

git log
Toont de commitgeschiedenis. Handige flags: –oneline –graph –decorate –all voor een compacte weergave.

git log –oneline –graph –decorate –all

git diff
Vergelijk wijzigingen tussen working tree, index en commits.

git diff # unstaged changes
git diff –staged # staged changes
git diff HEAD~1..HEAD

Tip: Gebruik dit om te controleren wat je gaat committen.

git show
Toont de inhoud en metadata van een specifieke commit of ref.

git show 7f3a2b1

git branch
Toont of maakt branches. -a laat ook remotes zien.

git branch # lijst lokaal
git branch -a # lijst inclusief remote branches
git branch feature/zoekfunctie

git switch / git checkout
git switch is de modernere manier om tussen branches te wisselen (git checkout kan ook nog).

git switch feature/zoekfunctie
git switch -c feature/nieuw

git merge
Voeg een andere branch samen in je huidige branch. Je kunt een fast-forward of een merge commit krijgen.

git switch main
git merge feature/zoekfunctie

Tip: Controleer altijd na een merge de tests en los conflicten op.

git rebase
Verplaats je commits op een nieuwe basis; dit geeft een lineaire geschiedenis. Gebruik rebase lokaal en vóór je naar remote pusht om historie schoon te houden.

git switch feature/zoekfunctie
git rebase main

Let op: rebase herschrijft geschiedenis — doe dit niet op gedeelde branches zonder overleg.
Lees meer over merge vs rebase: https://www.atlassian.com/git/tutorials/merging-vs-rebasing

git fetch / git pull / git push
fetch haalt refs op zonder te mergen. pull is fetch + merge (of –rebase). push duwt je commits naar remote.

git fetch origin
git pull –rebase origin main
git push origin feature/zoekfunctie

Tip: Gebruik git pull –rebase als je een nette geschiedenis wilt.

git stash
Sla tijdelijke, niet-gecommitte wijzigingen op en maak je working tree schoon. Handig als je snel van context moet wisselen.

git stash
git stash list
git stash pop

git restore
Herstel bestanden uit commit of verwijder ze uit de staging area. Dit is de modernere vervanger voor bepaalde checkout-operaties.

git restore README.md # herstelt working tree
git restore –staged README.md # verwijdert uit staging

git reset
Verplaats HEAD en eventueel index/working tree. –soft, –mixed, –hard hebben verschillende impact. Gebruik met voorzichtigheid.

git reset –soft HEAD~1
git reset –hard HEAD~1 # destructief

git cherry-pick
Breng een specifieke commit over naar je huidige branch. Handig voor hotfixes.

git cherry-pick 3a4b5c6

git clean
Verwijder ongeversioneerde bestanden. Let op: irreversibel zonder back-up.

git clean -fd

git mv / git rm
Verplaats of verwijder bestanden met behoud van geschiedenis.

git mv oudeNaam.php nieuweNaam.php
git rm ongewenst.txt

Best practices en workflows

  • Maak kleine, logische commits met duidelijke messages. Beschrijf het waarom, niet alleen het wat.
  • Bewaar gevoelige gegevens nooit in de repo; gebruik environment variabelen en secrets in je CI-platform.
  • Kies een branching-strategie die bij je team past: GitHub Flow is simpel voor continue deploys; GitLab Flow helpt met meerdere omgevingen. Zie workflows: https://www.atlassian.com/git/tutorials/comparing-workflows
  • Gebruik git rebase lokaal om je featurebranch up-to-date te houden, maar gebruik git revert op gedeelde branches om veilig wijzigingen terug te draaien.

Slotwoorden en bronnen

Met deze commands en uitleg heb je een solide basis om efficiënt met Git te werken. Git biedt veel diepgang – van eenvoudige commits tot geavanceerde rebase- en bisect-workflows – maar door de kernconcepten te begrijpen en bovenstaande commands te oefenen raak je snel productiever.

Aanbevolen leestips en referenties:

👉 Funkhaus gaat voor jou de extra mile

Wij zijn de alles-in-een partner die je volledig ontzorgt: van creatieve webdesigns tot technische optimalisaties en strategische content. Jij focust op je business, wij zorgen voor de rest.

Stuur een mailtje, of plan meteen een afspraak!

Krijg gratis en vrijblijvend persoonlijk advies

👋 Hey, wij staan voor je klaar!

Wat is jouw uitdaging vandaag?

Dit veld is voor validatiedoeleinden en moet ongewijzigd blijven.

Onze partners aan het woord

ACg8ocL1s i3 3KxViPTnVPQpC7wxkbNosNZKrkWaxrqs5rv63E6A=s120 c rp mo ba3 br100
Johnny Spies

Een conflict in de woocommerce shop van onze vereniging zorgde ervoor dat er geen betalingen werden verwerkt. Wout van Funkhaus heeft met ons meegekeken en wist het probleem te achterhalen.

Goede partij die snel en professioneel werkt en erg goed contact houd!

ACg8ocKb5uv xWY9tJqO5axmkEMzzqD4yTEvk0ojpsAlZQYwMm8DOw=s120 c rp mo ba12 br100
wommel94 wommelgem

Kwalitatieve diensten die ons helpen nieuwe klanten te vinden en bestaande klanten te binden. Aangename en efficiënte samenwerking.

ACg8ocKxtBNObGcPOJjka9o7PyBAovojvS63364L2MlcTj0jpAb9wA=s120 c rp mo br100
Niels Geenen

Deze mannen verdienen zeker 5 sterren! goede aanpak, goede communicatie en mooi ontwerp.

Zeker een aanrader!

ACg8ocLeSUl3gkNQ5YTKP4 E0I0HDBX3wqPB 5qNy3tEyHpUlW1Oog=s120 c rp mo br100
willy beuls

alles wordt tot in de puntjes afgewerkt

ACg8ocILumdO17ip2DjyGuRyhzDV1Z07hxpKPq2iQ8IYR64Zrn8SMA=s120 c rp mo ba12 br100
Saar

Het hele Eurowaste team wil jullie team bij Funkhaus bedanken voor de vlotte en professionele samenwerking. We hebben op dit moment een nieuwe frisse website die goed werkt. Ook bedankt om onze ‘socials’ zoals LinkedIn in orde te brengen.

ACg8ocJ kQqqK hnmZ8zgS7Mi5xiLRms g0STrIKXR MioPocvuB6A=s120 c rp mo br100
David Demuynck

De samenwerking met Funkhaus verliep perfect. Ze zijn erin geslaagd om een mooie website te bouwen die volledig aansluit bij onze doelstellingen. We raden de services van Funkhaus ten zeerste aan!

ALV UjWMr41NrBFg9qq a3pWL8oJK0xTATL3FDdZVaGyu91i41OXXPQP=s120 c rp mo br100
Yv. Prive

Altijd een zeer snelle reactie en sterk in communicatie. Wout kan snel schakelen en begrijpt altijd meteen wat ik bedoel. Het eindresultaat is daarom altijd snel uitgevoerd en direct naar tevredenheid. Zeker een aanrader!

ACg8ocLR0VtY2hJBHOe5T4D0pVzpZT yIybh4ZpotgH LfIzhNoWRw=s120 c rp mo br100
Geert Berden

Als je sterk potentieel uit de zorgsector samenbrengt met de bijzondere expertise van Funkhaus uit de ICT -sector is het resultaat meer dan de moeite… 👊

ACg8ocJXvWqS7PtoR nW4kErEbIkb0vwIfuoGuIMFTjJ64vovSCY2g=s120 c rp mo br100
Yves Van Pelt

Onze website werd gemaakt door Funkhaus. Prachtig resultaat en in de gehele lijn meer dan tevreden over de aanpak, luisterend oor naar onze wensen, fris geheel en vooral een goed werkend product. Bedankt voor alles Wout. We kunnen je enkel maar aanbevelen.

ACg8ocKMXZqMuA8jcMF2SIGPnHLCNfhAed6pF0EHNhZzkSBL9FTFZg=s120 c rp mo br100
Yasmine D’hanis

Bedankt Funkhaus voor de heldere blik op mijn website (www.minro-legal.be) ! Dank zij jullie duidelijke en concrete tips heb ik de website al een pak gebruiksvriendelijker kunnen maken. Ook heb ik dankzij jullie fouten kunnen wegwerken die tot nu toe onopgemerkt bleven.

Dankjewel! Zeker een aanrader!