Ga naar hoofdinhoud

GitHub- en Git-tutorial voor beginners

Een beginners-tutorial die laat zien hoe versiebeheer met Git werkt en waarom het cruciaal is voor datascienceprojecten.
Bijgewerkt 22 jul 2026  · 9 min lezen

Verkennen met AI

Openen in ChatGPTOpenen in ClaudeOpenen in Perplexity

Afbeelding door auteur

Wat is Git?

Git is een gedistribueerd, open-source versiebeheersysteem. Het stelt developers en data scientists in staat om code bij te houden, wijzigingen samen te voegen en terug te keren naar oudere versies - AWS. Je kunt er wijzigingen mee synchroniseren met een externe server. Door zijn flexibiliteit en populariteit is Git een industriestandaard geworden, omdat het vrijwel alle ontwikkelomgevingen, command-line tools en besturingssystemen ondersteunt. 

Hoe werkt Git?

Git slaat je bestanden en hun ontwikkelgeschiedenis op in een lokale repository. Telkens wanneer je aangebrachte wijzigingen opslaat, maakt Git een commit. Een commit is een momentopname van de huidige bestanden. Deze commits zijn met elkaar verbonden en vormen samen een graaf van de ontwikkelgeschiedenis, zoals hieronder te zien is. Hiermee kunnen we terugkeren naar een vorige commit, wijzigingen vergelijken en de voortgang van het project bekijken - Azure DevOps. De commits worden geïdentificeerd met een unieke hash, die wordt gebruikt om gemaakte wijzigingen te vergelijken en terug te draaien.  

Een graaf van de ontwikkelgeschiedenis

Een graaf van de ontwikkelgeschiedenis

Branches

Branches zijn kopieën van de broncode die parallel aan de hoofdversie werken. Om de aangebrachte wijzigingen op te slaan, voeg je de branch samen met de hoofdversie. Deze functionaliteit bevordert conflictvrij teamwork. Elke developer heeft zijn/haar taak, en met branches kunnen ze aan de nieuwe feature werken zonder hinder van andere teamleden. Zodra de taak klaar is, kun je nieuwe features samenvoegen met de hoofdversie (master-branch). Wil je leren hoe je een branch kloont, bekijk dan deze tutorial over Git Clone Branch.

Nieuwe feature toevoegen aan repository
Nieuwe feature toevoegen aan repository 


Commits

Er zijn drie statussen voor bestanden in Git: modified, staged en commit. Wanneer je een bestand wijzigt, worden de wijzigingen opgeslagen in de lokale map. Ze maken dan nog geen deel uit van de Git-ontwikkelgeschiedenis. Om een commit te maken, moet je gewijzigde bestanden eerst stagen. Je kunt wijzigingen toevoegen of verwijderen in de staging area en deze vervolgens verpakken als een commit met een bericht dat de wijzigingen beschrijft.  

Drie statussen van bestanden in Git
Drie statussen van bestanden in Git

Wat zijn de voordelen van Git?

  • Wijzigingen bijhouden: het stelt developers in staat om historische wijzigingen te bekijken. De ontwikkelgeschiedenis maakt het eenvoudiger om bugs te identificeren en te verhelpen.
  • IDE-integratie: door de populariteit is Git-integratie beschikbaar in alle ontwikkelomgevingen, zoals VSCode en JupyterLab.
  • Samenwerking in teams: een developmentteam kan zijn voortgang bekijken en met branches individueel aan een taak werken en wijzigingen samenvoegen met de hoofdversie. Pull requests, het oplossen van mergeconflicten en code review bevorderen de samenwerking. 
  • Gedistribueerd VCS: in een gedistribueerd systeem is er geen centrale opslag. Er zijn meerdere back-ups voor hetzelfde project. Deze aanpak stelt developers in staat offline te werken en wijzigingen te committen. 

Git voor datascienceprojecten

Git biedt versiebeheer voor scripts, metrics, data en modellen. Met de Git-extensie git-lfs kun je grote datasets en machinelearningmodellen opslaan en versieëren. In een typisch datasienceproject heb je een Jupyter-notebook, dataset, model, metadata en modelmetrics. De metadata omvatten bestanden met meta-informatie over het machinelearningmodel, features, modelparameters en automatiseringsbestanden. Dit alles is nodig om de voortgang van AI-toepassingen te monitoren en problemen op te lossen. 

Het bijhouden van datasience-experimenten helpt wetenschappers om per ongeluk aangebrachte wijzigingen terug te draaien, het beste experiment te kiezen op basis van de prestatiemaatstaf en samen te werken met andere teamleden. Het onderstaande diagram laat zien hoe wijzigingen in data of code de metadata en output van het model beïnvloeden. Het bijhouden van deze wijzigingen kan andere teamleden ook helpen om met een betere oplossing te komen. Leer alles over Git in de nieuwste blog van Summer Worsley.

Git voor een datasienceproject
Git voor een datasienceproject 

Samenwerken met GitHub

GitHub is een cloudplatform voor softwareontwikkeling. Het wordt veel gebruikt voor het opslaan van bestanden, het bijhouden van wijzigingen en het samenwerken aan ontwikkelprojecten. De afgelopen jaren is GitHub uitgegroeid tot het populairste sociale platform voor softwaregemeenschappen. Personen kunnen bijdragen leveren aan open-sourceprojecten en bugreports, nieuwe projecten bespreken en nieuwe tools ontdekken. 

Data scientists en machinelearning-engineers volgen het pad van softwareontwikkelaars en integreren hun workflow met GitHub. Zo kunnen ze hun onderzoekswerk delen, community-bijdragen mogelijk maken en samenwerken met datateams. Je vindt er allerlei data science- en machinelearningprojecten, gidsen, tutorials en resources. Voor studenten is het platform een kans geworden om werkervaring op te doen en uiteindelijk een baan te krijgen bij een vooraanstaand bedrijf. 

Portfolio

De meeste technische recruiters vragen om portfolio-projecten of een GitHub-profiel. Dit helpt hen bepalen of een kandidaat goed past bij hun bedrijf. Het is sterk aan te raden een GitHub-profiel aan te maken en het regelmatig bij te werken. Hiring managers zijn altijd op zoek naar kandidaten met veel ervaring in softwareontwikkeling die bijdragen aan open-sourceprojecten. Het kunnen analyseren van het GitHub-portfolio helpt hen ook om vragen voor technische interviews voor te bereiden. 

GitHub-profiel
GitHub-profiel

GitHub stelt data scientists in staat om hun projecten te laten zien, en het kan ook meetellen als werkervaring op je cv. Het tonen van portfolio-projecten creëert ook kansen om samen te werken, een startup te lanceren en onderzoek te doen. 

Portfolio-projecten
Portfolio-projecten

Features

GitHub biedt ook verschillende andere features die net zo belangrijk zijn als het tonen van een portfolio. Het is nodig om over elke feature te leren, zodat je ze kunt opnemen in je datasienceprojecten. 

  • Open-source: GitHub biedt een volledig ecosysteem voor open-sourceprojecten. Je kunt maintainers sponsoren, aan een project bijdragen, open-sourcetools gebruiken in je bestaande project en je werk promoten. 
  • Community-samenwerking: GitHub is een communityplatform geworden waar issues, feature requests, code en documentatie-bijdragen kunnen worden besproken. 
  • Explore: de GitHub Explore-tab helpt je nieuwe projecten, trending tools en developer-events te ontdekken. 
  • GitHub Gists: je kunt snippets van je code delen of insluiten in een blog of website. 
  • GitHub CLI: hiermee kun je merge requests uitvoeren, code reviewen, issues checken en de voortgang monitoren vanuit de commandline. 
  • Gratis opslag: onbeperkte opslag voor privé- en openbare repositories.
  • Webhosting: je kunt je portfoliosite of documentatie publiceren. GitHub Pages biedt een eenvoudige ervaring om een website te bouwen en te deployen. 
  • Codespace: een cloudontwikkelomgeving geïntegreerd met je GitHub-repository. 
  • Project: een aanpasbare, flexibele tool voor het plannen en bijhouden van werkzaamheden op GitHub.
  • Automatisering: GitHub Actions automatiseert de ontwikkelworkflow zoals build, test, publish, release en deployment.
  • Sponsor: je kunt je favoriete open-sourceprojecten of developers steunen met een maandelijkse of eenmalige bijdrage. Het stelt developers ook in staat om platforms van derden te gebruiken, zoals ko-fi. 

Basiscommando's

Voordat we duiken in het beheren van datasienceprojecten, leren we de meest voorkomende Git-commando's die je in elk datasienceproject zult gebruiken. De basiscommando's omvatten het initialiseren van de Git-repository, wijzigingen opslaan, logs controleren, wijzigingen naar de externe server pushen en mergen. 

  • git init maakt een Git-repository in een lokale map.

  • git clone <remote-repo-address>: kopieert de volledige repository van een externe server naar een lokale map. Je kunt het ook gebruiken om lokale repositories te kopiëren.

  • git add <file.txt>: voeg één bestand of meerdere bestanden en mappen toe aan de staging area.

  • git commit –m “Message”: maak een snapshot van wijzigingen en sla deze op in de repository. 

  • git config gebruik je om gebruikersspecifieke configuraties in te stellen, zoals e-mail, gebruikersnaam en bestandsformaat. 

  • git status toont de lijst met gewijzigde bestanden of bestanden die nog niet zijn gestaged en gecommit.  

  • git push <remote-name> <branch-name>: stuur lokale commits naar de externe branch van de repository.  

  • git checkout -b <branch-name>: maakt een nieuwe branch en schakelt ernaartoe.

  • git remote –v: bekijk alle externe repositories.

  • git remote add <remote-name> <host-or-remoteURL>: voeg een externe server toe aan de lokale repository. 

  • git branch –d <branch-name>: verwijder de branch.

  • git pull merge commits naar een lokale map vanuit een externe repository. 

  • git merge <branch-name>: nadat mergeconflicten zijn opgelost, voegt het commando de geselecteerde branch samen met de huidige branch.

  • git log toont een gedetailleerde lijst van commits voor de huidige branch.

Volledige ontwikkeling met GitHub
Volledige ontwikkeling met GitHub

Wil je meer commando's leren, bekijk dan onze Git-cheatsheet

Aan de slag

In deze sectie gaan we Git gebruiken om een datasienceproject bij te houden en GitHub als externe server. We leren hoe je Git installeert, een repository op GitHub maakt en kloont, machinelearning-experimenten uitvoert en wijzigingen (notebook, model, data) naar GitHub pusht met Windows PowerShell 7.  

Git installeren

Git ondersteunt alle besturingssystemen. Je kunt het installeren met commandline-tools of door het installatieprogramma te downloaden en te installeren. 

Linux

Voor Debian/Ubuntu-gebaseerde besturingssystemen gebruik je `apt-get install git`, en als je een ander Linux-systeem gebruikt, bekijk dan de volledige lijst met installatiecommando's hier.

macOS

Als je homebrew hebt geïnstalleerd, gebruik dan dit commando om Git te downloaden en te installeren: `brew install git`. Je kunt ook het binaire installatieprogramma downloaden en de setup uitvoeren.

Windows

Git installeren op Windows is eenvoudig. Ga naar de download-pagina, klik op jouw Windows-versie en download en installeer de setup. Als je de winget-tool hebt, kun je installeren door winget install --id Git.Git -e --source winget te typen in PowerShell. 

Stel na het installeren van Git je gebruikersnaam en e-mailadres in. Deze informatie wordt gebruikt om commits te ondertekenen. 

git config --global user.name "your-user-name"
git config --global user.email "your@email.com"

Voor meer diepgaande informatie over het installeren van Git, klik hier

Het project initialiseren

Als je een GitHub-account hebt, klik dan op de +-knop en selecteer een nieuwe repository. Typ vervolgens de naam van de repository en voeg een korte beschrijving toe. Er wordt een lege openbare repository gemaakt. 

Project maken
Project maken

Er zijn veel manieren om externe repositories naar de lokale map te klonen, en GitHub biedt een gedetailleide gids over klonen, een remote toevoegen en een Git-project initialiseren.  

GitHub klonen
GitHub klonen

We kunnen de repository eenvoudig klonen door een HTTPS-link op te geven. Zorg dat je je in de werkmap bevindt via de opdrachtprompt of PowerShell. 

git clone https://github.com/kingabzpro/DataCamp-Git.git

>>> Cloning into 'DataCamp-Git'...
>>> warning: You appear to have cloned an empty repository.

cd .\DataCamp-Git\

OF

Maak een nieuwe map met de naam “DataCamp-Git” en initialiseer Git met een eenvoudig commando. Voeg daarna een verbinding toe met de externe repository zodat je je werk kunt synchroniseren met GitHub.

mkdir DataCamp-Git
cd .\DataCamp-Git
git init

>>> Initialized empty Git repository in C:/Repository/GitHub/DataCamp-Git/.git/

git remote add origin https://github.com/kingabzpro/DataCamp-Git.git

OF

Als je al een project in een map hebt, initialiseer dan gewoon Git met `git init` en voeg de GitHub-remote toe, zoals hierboven getoond. 

Eenvoudige commit

Controleer voordat we bestanden aan onze repository toevoegen of je je in de juiste lokale map bevindt. 

We beginnen eenvoudig en maken een README-bestand met de kop DataCamp-Git. Daarna voegen we het toe aan de staging area met `git add`. 

echo "# DataCamp-Git" >> README.md
git add README.md

Git status laat zien dat we op de main-branch zitten en dat het `README.md`-bestand is gestaged en klaar is om gecommit te worden.  

git status

>>> On branch main
>>> No commits yet
>>> Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   README.md

Om onze eerste commit te maken, gebruiken we `git commit` met een bericht. Zoals we zien, is de eerste commit toegevoegd onder de hash ed9c886.

git commit -m "first commit"

>>> [main (root-commit) ed9c886] first commit
>>> 1 file changed, 1 insertion(+)
>>> create mode 100644 README.md

Projectbestanden toevoegen

We gebruiken de DataCamp Workspace MasterCard Stock Price with LSTM and GRU en downloaden bestanden. De auteur van het project heeft de data vooraf verwerkt en tijdreeksdata getraind op de LSTM- en GRU-modellen. Leer meer over het project door Recurrent Neural Network Tutorial (RNN) te lezen.

Om het modelbestand op te slaan, hebben we een nieuwe codecel toegevoegd in het Jupyter-notebook van het project. Het nieuwe script maakt een map met de naam “model” en slaat zowel de LSTM- als GRU-modellen op. 

!mkdir -p model
model_lstm.save('model/LSTM')
model_gru.save('model/GRU')

Zoals we zien, heeft de Git-repository een datamap met CSV-bestanden en de modelmap met de gewichten en metadata van het model. 

Git-datamap

We gaan nu alle bestanden stagen. Je kunt na het initiële commando elke map, elk bestand of data toevoegen. 

git add .\data .\model LSTM_GRU.ipynb RNN.png

OF

Als je alle files aan de staging area wilt toevoegen, gebruik dan een punt. 

git add .

Commit en push

We committen alle wijzigingen met een eenvoudig bericht, en de output toont alle nieuwe bestanden in create mode. 

git commit -m "project files added"

>>> [main aa3e19a] project files added
>>>  10 files changed, 5020 insertions(+)
>>>  create mode 100644 LSTM_GRU.ipynb
>>>  create mode 100644 RNN.png
>>>  create mode 100644 data/Mastercard_stock_history.csv
>>>  create mode 100644 data/Mastercard_stock_info.csv
>>>  create mode 100644 model/GRU/saved_model.pb
>>>  create mode 100644 model/GRU/variables/variables.data-00000-of-00001
>>>  create mode 100644 model/GRU/variables/variables.index
>>>  create mode 100644 model/LSTM/saved_model.pb
>>>  create mode 100644 model/LSTM/variables/variables.data-00000-of-00001
create mode 100644 model/LSTM/variables/variables.index

Synchroniseren met de externe GitHub-repository vereist een remomenaam en branchemaam `git push <remote-name> <branch-name>`. Als je maar één remote en één branch hebt, volstaat `git push`.  

Na `git push` vraagt een pop-upvenster om de inloggegevens; voeg gewoon je GitHub-gebruikersnaam en wachtwoord toe. Je kunt ook Personal access tokens genereren en die gebruiken in plaats van het wachtwoord. Leer meer in de Git Push and Pull Tutorial.

git push

>>> Enumerating objects: 21, done.
>>> Counting objects: 100% (21/21), done.
>>> Delta compression using up to 4 threads
>>> Compressing objects: 100% (19/19), done.
>>> Writing objects: 100% (21/21), 1.83 MiB | 1.59 MiB/s, done.
>>> Total 21 (delta 2), reused 0 (delta 0), pack-reused 0
>>> remote: Resolving deltas: 100% (2/2), done.
>>> To https://github.com/kingabzpro/DataCamp-Git.git
>>>  * [new branch]      main -> main

We gaan onze GitHub-repository kingabzpro/DataCamp-Git controleren om te zien of we de wijzigingen succesvol naar de remote hebben gepusht. De GitHub-repository bevat alle bestanden, data en modellen.

Push naar GitHub op remote
Push naar GitHub op remote

Git-branches

Het is aan te raden om met branches te werken: als je bijvoorbeeld aan projectdocumentatie wilt werken, maak dan een documentatie-branch met git checkout of git branch. Breng wijzigingen aan in het README-bestand en wanneer je klaar bent, merge je de branch met de basis. 

In ons geval hebben we een nieuwe branch readme gemaakt en daarheen geschakeld.

git checkout -b readme

Laten we het README-bestand bewerken door een beschrijving van het project toe te voegen en de RNN DataCamp Workspace en tutorial te linken. Daarna stagen we de wijzigingen en slaan we een snapshot van de wijzigingen op met een bericht.

git add README.md
git commit -m "project description and links to blog"

>>> [readme f3b8b9b] project description and links to blog
>>>  1 file changed, 8 insertions(+)

De remote-repository heeft geen readme-branch. Om een nieuwe branch te maken en wijzigingen te pushen, gebruiken we “readme:readme”. De output laat zien dat er nieuwe branches zijn gemaakt en dat zowel de lokale als de externe `readme`-branch zijn gesynchroniseerd. 

git push origin readme:readme
>>> remote: Resolving deltas: 100% (1/1), completed with 1 local object.
>>> remote: Create a pull request for 'readme' on GitHub by visiting:
>>> remote:  https://github.com/kingabzpro/DataCamp-Git/pull/new/readme
>>> remote:
To https://github.com/kingabzpro/DataCamp-Git.git
>>>  * [new branch]      readme -> readme

Je ziet dat we de lokale branch met een aangepaste versie van het README.md-bestand succesvol naar GitHub hebben gepusht. 

Readme-branch op GitHub
Readme-branch op GitHub

Pull request

Deze functionaliteit is gebruikelijk voor organisaties. Bijvoorbeeld: een softwareontwikkelaar heeft aan een nieuwe feature gewerkt en wil wijzigingen mergen naar de hoofd-remote-branch. We maken nu pull requests via de GitHub-GUI door op de pull request-knop te klikken. Selecteer daarna de readme-branch die we willen mergen met de basis (main). Je kunt een gedetailleerde uitleg typen van welke features zijn toegevoegd en op de pull request-knop klikken. 

Pull request van readme naar main-branch
Pull request van readme naar main-branch

De maintainer van de repository vergelijkt je wijzigingen en voegt ze samen zodra alle tests zijn geslaagd. In ons geval ben jij de maintainer, dus klik op de merge request om wijzigingen samen te voegen met de main-branch. 

GitHub Merge Pull Request
Pull request mergen op GitHub

Gefeliciteerd, we hebben succesvol een pull request gemaakt en gemerged met de main-branch. Je kunt de wijzigingen op de main-branch hier bekijken. 

Als je alle wijzigingen binnen je Git-repository wilt bekijken, typ dan `git log`; dit toont de historische wijzigingen van je project. Wijzigingen loggen in datasienceprojecten is belangrijk, en Git helpt ons om alle wijzigingen bij te houden, zelfs grote datasets. 

Geschiedenis van Git-logs
Geschiedenis van Git-logs

Tot slot

GitOps zijn cruciaal voor de ontwikkeling van datatoepassingen. Ze zijn een essentiële vaardigheid geworden voor alle soorten IT-banen; zelfs academische onderzoekers gebruiken ze om experimentele code met een breder publiek te delen. GitHub speelt bovendien een grotere rol in het promoten van open-sourceprojecten door een gratis software-ecosysteem voor iedereen te bieden. 

In deze tutorial hebben we geleerd over Git en GitHub en waarom ze belangrijk zijn voor datasienceprojecten. De tutorial introduceert ook basiscommando's in Git en biedt hands-on ervaring met het bijhouden van wijzigingen in data, model en code. Wil je meer leren over Git, volg dan de cursus Introduction to Git op DataCamp. Je kunt ook lezen over het belang van de GitHub Foundations-certificering en hoe deze je carrière kan helpen. 

Git-veelgestelde vragen

Wat is Git?

Een open-source, gedistribueerd versiebeheersysteem. Het stelt ontwikkelaars in staat om wijzigingen in een ontwikkelproject op te slaan, te versieën en te visualiseren. Het bevordert flexibel teamwork en een geoptimaliseerde workflow. 

Waar staat Git voor?

Het is geen acroniem. Volgens de bedenker, Linus Torvalds, “Git kan van alles betekenen, afhankelijk van je humeur.” Het is een combinatie van drie willekeurige letters die door geen enkel UNIX-commando worden gebruikt.  

Hoe kloon ik een Git-repository?

Typ gewoon `git clone <remote repository address>` in een terminal. Je kunt lokale en externe repositories klonen. Zowel SSH- als HTTPS-protocollen worden ondersteund.

Hoe verwijder ik een branch in Git?

Om een lokale branch te verwijderen, gebruik je `git branch -d <local_branch_name>`, en om de externe branch te verwijderen, gebruik je `git push <remote_name> -d <remote_branch_name>`.

Hoe wissel ik van branch in Git?

Schakel over naar een bestaande branch met `git checkout <branch name>` of maak en schakel over naar een nieuwe branch met `git checkout -b <branch name>`.

Hoe installeer ik Git?

Voor Linux-systemen gebruik je `apt-get install git`, en voor andere besturingssystemen kijk je op git-scm.com.

Is Git gratis?

Ja, het is gratis en open-source onder de GPL-2.0-licentie.

Wat is Git Bash?

Het is een Microsoft Windows-toepassing die Unix-gebaseerde shellhulpprogramma's en -ervaring biedt. 

Hoe maak ik een nieuwe branch in Git?

Gebruik het commando `git branch <new-branch> <base-branch>` in de terminal. Om een nieuwe branch te maken en ernaartoe te schakelen, gebruik je `git checkout -b <branch name>`.

Wat doet git pull?

Het werkt de lokale versie van een repository bij vanaf een externe server, kopieert alle wijzigingen van een externe repository en voegt ze samen met de lokale map. Dit proces vereist vaak het oplossen van mergeconflicten. 

Hoe fork ik een repo in Git?

Forken op GitHub is het proces waarbij je een kopie van een repository maakt naar de GitHub-account van de gebruiker vanuit een andere account. Dit gebeurt meestal voor community-bijdragen of teamwork. 

Hoe hernoem ik een branch in Git?

Voor de lokale repository is het simpel: gebruik `git branch -m <old-name> <new-name>`. Voor het hernoemen van een externe branch moeten we eerst de oude branch verwijderen met `git push origin --delete <old-name>` en vervolgens de nieuwe branch pushen met `git push -u origin <new_name>`.

Hoe verwijder ik de Git-repository?

Je kunt de lokale map verwijderen of de .git-map verwijderen met `rm -fr .git`. Voor GitHub ga je naar de repository-instellingen, en onderaan de pagina zie je de optie om te verwijderen.

Hoe installeer ik Git op Windows?

Download het Windows-installatieprogramma via de site en voer de setup uit; hiermee worden Git Bash, Git CDM en Git GUI geïnstalleerd.

Hoe zet ik een commit terug in Git?

Gebruik `git revert <commit sha>`, waarvoor je de unieke hash van een eerdere commit nodig hebt. Je kunt ook `git revert HEAD~2` gebruiken, wat betekent: twee commits achter de head.   

Onderwerpen
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