Sobes.tech
Junior

Wat is het verschil tussen de commando's pull en fetch in Git?

sobes.tech AI

Antwoord van AI

git fetch downloadt wijzigingen van een externe repository, maar past ze niet toe op de huidige tak. git pull voert een git fetch uit, en merge vervolgens automatisch (merge) de ontvangen wijzigingen met de huidige tak.

Belangrijke verschillen:

Commando Actie Invloed op werkmap / tak
git fetch Downloadt objecten (commits, bestanden) Verandert de werkmap of huidige tak niet
git pull Downloadt objecten en voegt wijzigingen samen Actualiseert de huidige tak en werkmap

Voorbeeld van gebruik:

Om gewoon te zien wat er op de remote server is veranderd:

git fetch origin

(Je kunt de wijzigingen bekijken met git log origin/<tak>)

Om de wijzigingen op te halen en automatisch toe te passen op de huidige tak:

git pull origin main # bijvoorbeeld

git pull is in wezen gelijk aan het sequentieel uitvoeren van git fetch en git merge of git rebase (afhankelijk van de instellingen).

# Equivalent aan git pull
git fetch origin
git merge origin/main # als de huidige tak main is en merge wordt gebruikt als strategie

Het gebruik van git fetch biedt meer controle, omdat je de inkomende wijzigingen kunt bekijken voordat je ze samenvoegt. git pull is handig voor snelle synchronisatie.