Git Commands Cheat Sheet: De commando’s die je daadwerkelijk gebruikt, met voorbeelden
Een praktische Git-referentie, gegroepeerd op wat je probeert te doen, vanaf je eerste commit tot het ongedaan maken van een fout. Houd hem open terwijl u werkt en gebruik de gids voor ongedaan maken voordat u naar iets riskant grijpt.
- Een wijziging strekt zich uit over drie gebieden: werkmap, staginggebied en repository.
git statusis het veiligste commando dat je hebt, dus voer het constant uit.- Gebruik
git revertom gedeelde commits ongedaan te maken, en bewaargit reset --hardvoor lokaal werk waar je zeker van bent. git reflogkan meestal commits redden waarvan je dacht dat ze verloren waren.
Niemand onthoudt elk Git-commando, en dat is ook niet nodig. Dit Spiekbriefje voor Git-commando’s richt zich op de kleine set die bijna al het dagelijkse werk omvat, gegroepeerd op de taak die je probeert uit te voeren.
We hebben de lokale commando’s getest in een wegwerpdemo-repository met behulp van Git voor Windows, en de getoonde uitvoer komt uit die run, zonder waarschuwingen voor het einde van de regel. Je commit-hashes zullen verschillen. De externe opdrachten hebben een server nodig, dus die hebben we niet uitgevoerd. Nieuw bij versiebeheer? Begin met onze Git-tutorial voor beginners.
Hoe Git denkt: drie gebieden
De meeste verwarring verdwijnt zodra je weet waar een verandering leeft:
| Gebied | Wat het bevat | Daarheen verplaatst |
|---|---|---|
| Werkmap | Uw bestanden terwijl u ze bewerkt | Bewerken |
| Verzamelplaats (index) | Wijzigingen geselecteerd voor de volgende commit | git toevoegen |
| Lokale opslagplaats | Je opgeslagen commitgeschiedenis | git commit |
| Externe opslagplaats | De gedeelde kopie, zoals op GitHub | git push |
Een project opzetten en starten
| Commando | Wat het doet |
|---|---|
git config --global user.name "Asha" |
Stelt uw naam in op commits |
git config --global user.email "a@b.com" |
Stelt uw e-mailadres in op commits |
git config --global init.defaultBranch hoofd |
Benoemt nieuwe standaardtakken main |
git init |
Creëert een repository in de huidige map |
git kloon <url> |
Downloadt een bestaande opslagplaats |
git config --list |
Toont uw huidige instellingen |
Bewaar uw werk
| Commando | Wat het doet |
|---|---|
git-status |
Laat zien wat er is veranderd |
git voeg bestand.txt toe |
Faseert één bestand |
git toevoegen. |
Voert alle wijzigingen in deze map uit |
git add -p |
Faseert geselecteerde delen van een bestand |
git diff |
Toont niet-gefaseerde wijzigingen |
git diff --geënsceneerd |
Laat zien wat er zal worden vastgelegd |
git commit -m "Bericht" |
Slaat gefaseerde wijzigingen op als een commit |
git commit -am "Bericht" |
Stages bijgehouden bestanden en commits ze |
Hier ziet u hoe de korte statusweergave verandert naarmate er een nieuw bestand wordt verplaatst:
$ echo "hello" > app.txt
$ git status --short
?? app.txt
$ git add app.txt
$ git status --short
A app.txt
$ git commit -m "Add app file"
?? betekent niet-bijgehouden, en A betekent toegevoegd aan enscenering. In de indeling met twee kolommen is de linkerkolom het verzamelgebied en de rechterkolom uw werkmap. Merk op dat git commit -am gloednieuwe bestanden overslaat, dus je moet deze eerst expliciet toevoegen.
Takken
| Commando | Wat het doet |
|---|---|
git-tak |
Geeft lokale vestigingen weer |
git branch -a |
Inclusief afgelegen vestigingen |
git switch-functie/login |
Verplaatst naar een tak |
git switch -c functie/login |
Creëert een vertakking en gaat ernaartoe |
git merge-functie/login |
Voegt die vertakking samen met de huidige |
git rebase hoofd |
Speelt je commits opnieuw af bovenop main |
git branch -d feature/login |
Verwijdert een samengevoegde vertakking |
git branch -D functie/login |
Forceer het verwijderen van een niet-samengevoegde vertakking |
Hier is een kleine feature branch van begin tot eind:
$ git switch -c feature/login
$ echo "login" >> app.txt
$ git commit -am "Add login"
$ git switch main
$ git merge --no-edit feature/login
$ git log --oneline --graph
* d0450b6 Add login
* 676b684 Add app file
$ git branch -d feature/login
Deleted branch feature/login (was d0450b6).
De geschiedenis is een rechte lijn omdat main niet was verplaatst, dus deed Git een snelle samenvoeging. Je zult git checkout nog steeds zien in oudere handleidingen. Het werkt, maar de nieuwere switch en restore commando’s splitsen de vele taken op in duidelijkere taken. Om te kiezen tussen samenvoegen en rebasen, lees Git merge vs rebase.
Werken met afstandsbedieningen
| Commando | Wat het doet |
|---|---|
git op afstand -v |
Geeft afstandsbedieningen en hun URL’s weer |
git remote voeg oorsprong <url> toe |
Verbindt een afstandsbediening |
git ophalen |
Downloadt wijzigingen zonder samen te voegen |
git trekken |
Haalt op en integreert vervolgens in uw vertakking |
git push |
Uploadt uw commits |
git push -u origin-functie/login |
Duwt een nieuwe tak en volgt deze |
git push origin --delete feature/login |
Verwijdert een externe vertakking |
git push --force-with-lease |
Forceer duwt, maar alleen als niemand anders heeft geduwd |
fetch is altijd veilig, omdat het nooit je bestanden verandert. Als je een branch moet overschrijven na een rebase, geef dan de voorkeur aan --force-with-lease boven gewoon --force, omdat het weigert de nieuwe commits van een collega weg te vagen.
Stash: leg het werk opzij
Stash is handig als je van taak moet wisselen, maar nog niet klaar bent om je vast te leggen:
$ echo "wip" >> app.txt
$ git stash
$ git status --short
# clean, the change is put away
$ git stash pop
$ git status --short
M app.txt
| Commando | Wat het doet |
|---|---|
git voorraad |
Slaat wijzigingen op en ruimt uw werkmap op |
git stash-u |
Inclusief niet-bijgehouden bestanden |
git stashlijst |
Toont opgeslagen voorraad |
git stashpop |
Herstelt de nieuwste stash en verwijdert deze |
git stash van toepassing |
Herstelt het, maar houdt het opgeslagen |
Geschiedenis bekijken
| Commando | Wat het doet |
|---|---|
git log --oneline |
Toont één regel per commit |
git log --oneline --graph --all |
Tekent alle takken |
git log -p bestand.txt |
Toont de wijzigingen van een bestand in de loop van de tijd |
git toon <hash> |
Toont één commit in detail |
git schuldbestand.txt |
Toont wie het laatst elke regel heeft gewijzigd |
git opnieuw loggen |
Is overal te zien waar HEAD is geweest |
git doormidden snijden |
Binair zoekt naar de commit die een bug heeft toegevoegd |
Fouten ongedaan maken: “Ik wil…”
Dit is het deel waar de meeste mensen naar opkijken. Vind uw situatie:
| Situatie | Commando |
|---|---|
| Gooi niet-gefaseerde bewerkingen in een bestand weg | git herstelbestand.txt |
| Unstage een bestand, maar behoud de bewerkingen | git herstel --gestaged bestand.txt |
| Herstel het bericht of de bestanden van de laatste commit | git commit --amend |
| Maak de laatste commit ongedaan en houd de wijzigingen gefaseerd | git reset --soft HEAD~1 |
| Maak de laatste commit ongedaan, waarbij de wijzigingen ongestaged blijven | git reset HEAD~1 |
| Maak een gepushte commit veilig ongedaan | git retourneert <hash> |
| Gooi alle lokale wijzigingen weg | git reset --hard |
| Verwijder niet-bijgehouden bestanden | git clean -fd (voorbeeld met -n) |
| Herstel een “verloren” commit | git reflog, dan git branch rescue <hash> |
Tip: Voordat je iets riskant doet, ren je git branch backup. Het kost niets en geeft je een label waar je naar terug kunt keren. git reset --hard en git clean kunnen niet-toegewezen werk permanent vernietigen, wat zelfs reflog niet kan herstellen.
Reset versus terugzetten versus herstellen
Deze drie namen veroorzaken veel verwarring, maar ze doen heel verschillende dingen:
| Commando | Werkt door | Veranderingen geschiedenis? | Veilig op gedeelde vestigingen? |
|---|---|---|---|
git herstellen |
Bestanden | Nee | Ja, maar lokale bewerkingen worden verwijderd |
git terugzetten |
Een commit, door het tegenovergestelde toe te voegen | Voegt eraan toe | Ja |
git-reset |
De vertakkingswijzer | Herschrijft het | Nee |
In onze demo hebben we een slechte regel gepleegd en deze teruggedraaid. Het bestand keerde terug naar de eerdere inhoud, terwijl de fout als geschiedenis zichtbaar bleef in het logboek:
$ echo "oops" >> app.txt
$ git commit -am "Bad change"
$ git revert --no-edit HEAD
$ cat app.txt
hello
login
Vervolgens verwijderde git reset --soft HEAD~1 die laatste commit, maar hield de wijzigingen gestaged, wat git status --short liet zien als M app.txt.
Labels
| Commando | Wat het doet |
|---|---|
git-tag |
Geeft tags weer |
git-tag v1.0 |
Creëert een lichtgewicht tag |
git tag -a v1.0 -m "Vrijgeven" |
Creëert een geannoteerde tag, het beste voor releases |
git push oorsprong v1.0 |
Pusht een tag (tags pushen standaard niet) |
Tags activeren vaak releasepijplijnen, zoals onze GitHub Actions CI/CD-handleiding uitlegt.
Een eenvoudige dagelijkse workflow
git switch main
git pull
git switch -c feature/search
# edit files
git status
git add -p
git commit -m "Add search by product name"
git push -u origin feature/search
# open a pull request, get a review, then merge
Schrijf commit-berichten die de verandering in de imperatief uitleggen, zoals “Fix login redirect”. Je zult jezelf dankbaar zijn als je het logboek over zes maanden leest.
Veel voorkomende fouten
- Geheimen vastleggen. Als je een bestand bij een latere commit verwijdert, wordt het niet uit de geschiedenis verwijderd. Roteer het geheim onmiddellijk en gebruik
.gitignore. - Gedeelde geschiedenis herschrijven. Reset of rebase geen commits die anderen al hebben binnengehaald.
git add .blindelings gebruiken. Vink eerstgit statusaan, zodat buildbestanden en logs buiten blijven.- Gebruik gewoon
--force. Geef de voorkeur aan--force-with-lease. - Grote commits maken. Kleine commits zijn gemakkelijker te beoordelen, terug te draaien en in tweeën te delen.
Tot slot
Leer de drie gebieden en een tiental commando’s, en Git is niet meer eng. Houd de tabel voor ongedaan maken bij de hand en onthoud dat git status en git reflog uw vangnet zijn. Om vertrouwen op te bouwen, creëer je een wegwerpopslagplaats en breek en repareer je deze doelbewust, aangezien dat de goedkoopste plek is om fouten te maken.
Veelgestelde vragen
Wat zijn de meest gebruikte Git-opdrachten?
De dagelijkse set is git-status, toevoegen, commit, push, pull, switch, branch, merge en log. Die paar opdrachten bestrijken het grootste deel van een normale werkdag.
Hoe maak ik mijn laatste commit in Git ongedaan?
Als het lokaal is, gebruik dan git reset –soft HEAD~1 om de veranderingen geënsceneerd te houden. Als je het al hebt gepusht, gebruik dan git revert zodat de geschiedenis voor anderen intact blijft.
Wat is het verschil tussen git fetch en git pull?
git fetch downloadt alleen nieuwe gegevens en laat je bestanden met rust. git pull haalt deze wijzigingen op en merget of rebaseert deze in je huidige branch.
Wat is het verschil tussen git reset en git revert?
git reset verplaatst de branch pointer en kan de geschiedenis herschrijven. git revert voegt een nieuwe commit toe die een eerdere commit ongedaan maakt, wat het veilig maakt op gedeelde branches.
Kan ik een verwijderde branch in Git herstellen?
Meestal wel. Vind de laatste commit met git reflog, maak dan de branch opnieuw aan met de git branch naam gevolgd door de hash, op voorwaarde dat Git het nog niet heeft opgeruimd.
Blijf leren
Hulp nodig met testen, WordPress of SEO?
We helpen teams betere software te leveren en hun sites te laten groeien. Vertel ons waar u mee bezig bent en wij stellen een duidelijke volgende stap voor.
Meer handleidingen over testen, AI en moderne ontwikkeling
Genoten van dit artikel? Kies een onderwerp en ga direct naar onze nieuwste tutorials.
AI-hallucinaties uitgelegd: waarom taalmodellen dingen verzinnen en hoe ze te verminderen
AI-hallucinaties uitgelegd: wat ze zijn, waarom taalmodellen ze produceren, veelvoorkomende typen, hoe je ze kunt verminderen met aarding en aanwijz…
Lees artikel →DevOpsOmgevingsvariabelen uitgelegd: .env-bestanden, geheimen en configuratie goed gedaan
Omgevingsvariabelen uitgelegd met Python-voorbeelden die we hebben uitgevoerd: ze lezen en instellen, waarom elke waarde een string is, .env-bestand…
Lees artikel →SoftwareontwikkelingAPI-snelheidsbeperking uitgelegd: algoritmen, headers en afhandeling van 429-fouten
API-snelheidsbeperking uitgelegd met een simulatie die we hebben uitgevoerd: token-bucket, vast venster, schuifvenster, 429 reacties, headers van sn…
Lees artikel →TestautomatiseringSpotten in Python: unittest.mock, patch en de fouten die tests doen liegen
Spotten in Python met unittest.mock, getest: Mock en return_value, side_effect, patchen waar een naam wordt gebruikt, spec en autospec, spotdatums e…
Lees artikel →SoftwaretestenCodedekking uitgelegd: lijn versus filiaaldekking en wat 100% werkelijk betekent
Codedekking uitgelegd met een echte dekking.py-run: dekking van lijnen, vertakkingen en condities, een rapport lezen, waarom 100% dekking nog steeds…
Lees artikel →Databases & SQLDELETE versus TRUNCATE versus DROP in SQL: verschillen, terugdraaien en wanneer elk te gebruiken
DELETE versus TRUNCATE versus DROP uitgelegd met geteste SQL: wat elk verwijdert, terugdraaien, triggers, identiteitsreset, snelheid en hoe PostgreS…
Lees artikel →Databases & SQLSQL-weergaven uitgelegd: creëer, gebruik en vermijd de valkuilen, met voorbeelden
SQL-weergaven uitgelegd met query's die we hebben uitgevoerd: een weergave maken, live resultaten, kolommen verbergen, prestaties, bijwerkbare en ge…
Lees artikel →SoftwareontwikkelingTypeScript-interface versus type: echte verschillen, getest met de compiler
TypeScript-interface versus type, gecontroleerd met de echte compiler: wat beide kunnen doen, wat slechts één kan doen, samenvoegen van declaraties,…
Lees artikel →SoftwareontwikkelingPython *args en **kwargs uitgelegd: flexibele functies met duidelijke voorbeelden
Python *args en **kwargs uitgelegd met code die we hebben uitgevoerd: in- en uitpakken, parametervolgorde, argumenten die alleen trefwoorden en posi…
Lees artikel →SoftwareontwikkelingPython Lambda-functies: syntaxis, echt gebruik en wanneer u ze niet moet gebruiken
Python lambda-functies uitgelegd met code die we hebben uitgevoerd: syntaxis, sorteren met sleutel, kaart en filter, sluitingen, de laat-bindende va…
Lees artikel →Kunstmatige intelligentieWat zijn AI-agenten? Hoe ze werken, met een eenvoudige agentloop die u kunt uitvoeren
Wat zijn AI-agenten? Een duidelijke gids voor de agentenlus, tools, geheugen en vangrails, met een kleine Python-lus die we hebben uitgevoerd, echte…
Lees artikel →DevOpsMonitoring versus waarneembaarheid: het echte verschil, met logboeken, statistieken en sporen
Monitoring versus waarneembaarheid uitgelegd: bekende en onbekende fouten, logboeken, statistieken en sporen, een walkthrough voor afrekenincidenten…
Lees artikel →DevOpsDocker-volumes versus bindingsmounts: bewaar containergegevens op de juiste manier
Docker-volumes versus bind-mounts uitgelegd: waarom containergegevens verdwijnen, benoemde volumes, bind-mounts, tmpfs, Compose-voorbeelden, back-up…
Lees artikel →TestautomatiseringTDD versus BDD: belangrijkste verschillen, één functie die op beide manieren is gebouwd en wanneer deze moet worden gebruikt
TDD versus BDD uitgelegd met één kortingsfunctie die in beide richtingen is gebouwd: rood-groen-refactor met code die we hebben uitgevoerd, gegeven-…
Lees artikel →SoftwaretestenGebruikersacceptatietesten (UAT): proces, checklist en echte voorbeelden
Gebruikersacceptatietesten uitgelegd: wie voert het uit, hoe het verschilt van QA, een proces in zeven stappen, een UAT-testcase-sjabloon, een check…
Lees artikel →Databases & SQLSQL NULL-waarden uitgelegd: IS NULL, COALESCE, NULLIF en de te vermijden vallen
SQL NULL-waarden uitgelegd met query's die we hebben uitgevoerd: logica met drie waarden, IS NULL, COALESCE, NULLIF, hoe aggregaten, joins en sorter…
Lees artikel →Databases & SQLSQL CASE WHEN-instructie: syntaxis, echte voorbeelden en veelvoorkomende fouten
SQL CASE WHEN uitgelegd met vragen die we hebben uitgevoerd: eenvoudige en doorzochte formulieren, volgorde van de voorwaarden, draaipunten met SUM,…
Lees artikel →SoftwareontwikkelingWat is JWT? JSON-webtokens uitgelegd met een werkend voorbeeld
Wat is JWT? JSON Web Tokens uitgelegd: de drie delen, een token gebouwd en waarmee is geknoeid in de code die we hebben uitgevoerd, JWT versus sessi…
Lees artikel →SoftwareontwikkelingJavaScript-gebeurtenislus uitgelegd: call-stack, microtaken en timers met voorbeelden
De JavaScript-gebeurtenislus uitgelegd met code die we hebben uitgevoerd: call-stack, taak- en microtask-wachtrijen, waarom setTimeout 0 niet onmidd…
Lees artikel →SoftwareontwikkelingPython-generatoren en opbrengst uitgelegd: bespaar geheugen met echte voorbeelden
Python-generatoren en opbrengst uitgelegd met code die we hebben uitgevoerd: hoe ze pauzeren en hervatten, gemeten geheugenbesparingen, pijplijnen, …
Lees artikel →Kunstmatige intelligentieWat zijn inbeddingen? Vectoren en cosinusovereenkomst eenvoudig uitgelegd
Wat zijn insluitingen? Een gids in duidelijke taal over vectoren, cosinusovereenkomst en semantisch zoeken, met een klein voorbeeld dat we hebben ui…
Lees artikel →DevOpsImplementatie van blauwgroen versus kanarie: verschillen, afwegingen en hoe te kiezen
Blauw-groen versus kanarie-implementatie uitgelegd: hoe elk werkt, kosten, risico's en terugdraaien, stabiele gebruikersbucket die we hebben getest,…
Lees artikel →TestautomatiseringSchilferige tests: wat de oorzaak ervan is en hoe u ze voorgoed kunt oplossen
Zwakke tests uitgelegd met demo's die we hebben uitgevoerd: de belangrijkste oorzaken, hoe je er een kunt bevestigen en diagnosticeren, goede oploss…
Lees artikel →SoftwaretestenBelastingtesten versus stresstesten: verschillen, statistieken en k6-voorbeelden
Belastingtesten versus stresstesten uitgelegd: wat elk bewijst, piek- en soak-tests, de statistieken die er toe doen, waarom gemiddelden misleiden, …
Lees artikel →SoftwaretestenTestcase versus testscenario: belangrijkste verschillen, voorbeelden en wanneer deze te gebruiken
Testcase versus testscenario uitgelegd: duidelijke definities, een tabel naast elkaar, één functie voor het opnieuw instellen van wachtwoorden, over…
Lees artikel →Databases & SQLOptimalisatie van SQL-query's: lees uitvoeringsplannen en repareer langzame query's, met timing
Optimalisatie van SQL-query's getest op een miljoen rijen: lees uitvoeringsplannen, voeg de juiste indexen toe, repareer niet-sargeerbare filters, g…
Lees artikel →Databases & SQLSQL UNION versus UNION ALL: verschillen, voorbeelden en geteste prestaties
SQL UNION versus UNION ALL uitgelegd met de query's die we hebben uitgevoerd: duplicaten, de regels volgen beide, een echte databug, gemeten prestat…
Lees artikel →SoftwareontwikkelingJavaScript Fetch API-tutorial: GET, POST, foutafhandeling en time-outs
Een JavaScript Fetch API-tutorial getest tegen een lokale server: GET en POST, waarom 404 niet gooit, een herbruikbare helper, queryreeksen, time-ou…
Lees artikel →SoftwareontwikkelingPython-bestandsverwerking: lezen, schrijven, CSV, JSON en pathlib met voorbeelden
Het verwerken van Python-bestanden uitgelegd met code die we hebben uitgevoerd: open modi, met het lezen van grote bestanden, CSV, JSON, pathlib, bi…
Lees artikel →SoftwareontwikkelingPython-klassen en -objecten: OOP-zelfstudie met echte voorbeelden
Python-klassen en -objecten uitgelegd met code die we hebben uitgevoerd: __init__, methoden, klasse versus instantie-attributen, overerving, eigensc…
Lees artikel →Kunstmatige intelligentieWat is een groot taalmodel? Hoe LLM's werken, uitgelegd zonder de hype
Wat is een groot taalmodel? LLM's uitgelegd in duidelijke taal: tokens, inbedding, aandacht, training, temperatuur- en contextvensters, een kleine d…
Lees artikel →DevOpsLinux-opdrachten voor beginners: de essentiële terminalgids met voorbeelden
Linux-opdrachten voor beginners, gegroepeerd op taak: navigatie, bestanden, logboeken bekijken, grep, pipelines, machtigingen, processen en archieve…
Lees artikel →TestautomatiseringSelenium versus toneelschrijver: belangrijkste verschillen, code vergeleken en welke te kiezen
Selenium versus Playwright vergeleken: architectuur, wachten, browser- en taalondersteuning, debuggen, dezelfde test in beide tools, migratieadvies …
Lees artikel →SoftwaretestenEquivalentiepartitionering: testontwerptechniek uitgelegd met uitgewerkte voorbeelden
Equivalentiepartitionering uitgelegd: hoe je geldige en ongeldige partities kunt vinden, uitgewerkte voorbeelden voor leeftijden, wachtwoorden en ko…
Lees artikel →SoftwaretestenErnst versus prioriteit bij het testen van software: verschillen, matrix en echte voorbeelden
Ernst versus prioriteit bij het testen van software uitgelegd: duidelijke definities, een vierwegmatrix met voorbeelden, niveauschalen, wie deze bep…
Lees artikel →Databases & SQLTutorial voor SQL-subquery's: typen, gecorreleerde subquery's en BESTAAN met voorbeelden
Een SQL-subquery-tutorial met query's die we hebben uitgevoerd: scalaire, IN-, FROM- en SELECT-subquery's, gecorreleerde subquery's, EXISTS, de NOT …
Lees artikel →Databases & SQLSQL-transacties en ACID uitgelegd: COMMIT-, ROLLBACK- en isolatieniveaus
SQL-transacties en ACID uitgelegd met een bankoverschrijving die we hebben uitgevoerd: COMMIT, ROLLBACK, savepoints, locks, isolatieniveaus, dirty r…
Lees artikel →SoftwareontwikkelingGit Commands Cheat Sheet: de commando's die je daadwerkelijk gebruikt, met voorbeelden
Een spiekbriefje voor Git-opdrachten, gegroepeerd op taak: setup, staging, branches, remotes, stash, geschiedenis en fouten ongedaan maken, met uitv…
Lees artikel →SoftwareontwikkelingJavaScript-beloften uitgelegd: vervolgens catch, Promise.all en veelvoorkomende fouten
JavaScript-beloften uitgelegd met code die we hebben uitgevoerd: staten, dan en catch-ketens, foutafhandeling, Promise.all, allSettled, race en wat …
Lees artikel →SoftwareontwikkelingZelfstudie Python-woordenboek: methoden, voorbeelden en veelvoorkomende patronen
Een Python-woordenboektutorial met code die we hebben uitgevoerd: dictaten, sleutelmethoden, samenvoeg-, begrips-, tel- en groeperingspatronen en ve…
Lees artikel →Kunstmatige intelligentieWat is RAG? Retrieval-Augmented Generation uitgelegd met een werkend voorbeeld
Wat is RAG? Retrieval-augmented generatie stap voor stap uitgelegd: indexeren, chunken, insluiten, ophalen, een klein werkend Python-voorbeeld, eval…
Lees artikel →DevOpsTerraform-zelfstudie voor beginners: infrastructuur als code van het eerste bestand tot modules
Een Terraform-tutorial voor beginners: begin zonder cloudaccount, leer init, plan en pas toe, vervolgens variabelen, outputs, status, modules en een…
Lees artikel →DevOpsDocker versus Kubernetes: belangrijkste verschillen, hoe ze samenwerken en welke u nodig heeft
Docker vs Kubernetes legde uit: wat elk doet, dezelfde app draait met beide, Docker Compose en Swarm vergeleken, de dockershim veranderen en hoe je …
Lees artikel →TestautomatiseringPytest-tutorial voor beginners: armaturen, parametriseren en echte voorbeelden
Een pytest-tutorial voor beginners met tests die we hebben uitgevoerd op pytest 9.2: beweringen, armaturen, parametrize, conftest, markers, tmp_path…
Lees artikel →SoftwaretestenLevenscyclus van softwaretests (STLC): 6 fasen, in- en uitgangscriteria, voorbeeld
De levenscyclus van softwaretesten uitgelegd: zes STLC-fasen met in- en uitstapcriteria, deliverables, een voorbeeld van een uitgewerkte inlogfuncti…
Lees artikel →SoftwareontwikkelingGit merge vs rebase: verschillen, voorbeelden en wanneer je wat gebruikt
Git merge vs rebase uitgelegd met echte logoutput, een vergelijkingstabel, de gouden regel van rebase en een veilige teamwerkwijze.
Lees artikel →SoftwareontwikkelingPython list comprehension: syntaxis, voorbeelden en wanneer je het vermijdt
Python list comprehension uitgelegd: syntaxis, filteren, if-else, geneste lussen, gemeten tijden en wanneer een gewone for-lus beter is.
Lees artikel →Databases & SQLSQL JOIN uitgelegd met voorbeelden (Inner, Left, Right, Full)
Begrijp SQL joins stap voor stap met voorbeeldtabellen en queries: INNER, LEFT, RIGHT, FULL, CROSS en SELF, plus veelgemaakte fouten en prestatietips.
Lees artikel →