Samenvoegconflicten
Veeg om het menu te tonen
Inzicht in merge-conflicten
Een merge-conflict treedt op wanneer Git de wijzigingen die zijn aangebracht op twee uiteenlopende branches niet automatisch kan samenvoegen. Dit gebeurt meestal wanneer er wijzigingen zijn aangebracht aan dezelfde regels code in dezelfde bestanden in beide branches sinds hun laatste gemeenschappelijke voorouder.
Voorbeeldworkflow
Eerst alle branches in de repository weergeven:
git branch
Je bevindt je momenteel op de master branch, dus wijzig het bestand branch_learning.txt door een nieuwe regel toe te voegen en commit deze wijziging direct:
echo "New line from the master branch" >> branch_learning.txt
git commit -a -m "Add a new line specifying the master branch to branch_learning.txt"
Schakel nu over naar de feature-branch, voeg een andere nieuwe regel toe aan het bestand branch_learning.txt en commit deze wijziging direct:
git checkout feature/new-feature
echo "New line from the feature branch" >> branch_learning.txt
git commit -a -m "Add a new line specifying the feature branch to branch_learning.txt"
Beide commits zijn succesvol, dus schakel terug naar de master branch en voeg de feature branch ermee samen:
git checkout master
git merge feature/new-feature
Oeps, een merge-conflict is opgetreden omdat dezelfde regel in hetzelfde bestand verschilt tussen branches, en Git dit niet automatisch kan oplossen.
Laten we ook het commando git status uitvoeren om meer informatie over het conflict te krijgen:
git status
Dit bericht geeft aan dat je de merge moet afbreken of de conflicten oplossen en daarna de wijzigingen moet committen. Je gaat verder met de laatste optie en lost de conflicten op in het volgende hoofdstuk.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.