Sobes.tech
Middle

Waarvoor wordt de opdracht git cherry-pick gebruikt?

sobes.tech AI

Antwoord van AI

Om individuele commits van de ene tak naar de andere over te zetten. Hiermee kunt u selectief de wijzigingen toepassen die door een specifieke commit worden gepresenteerd, zonder de hele tak te hoeven samenvoegen.

Voordelen:

  • Geïsoleerde toepassing van wijzigingen.
  • Vermijden van merge-conflicten bij het overzetten van alleen de benodigde commits.
  • Het behoud van een schone geschiedenis van de takken.

Syntax:

git cherry-pick <commit-hash>

U kunt meerdere commit-hashes of een bereik van commits specificeren:

git cherry-pick <commit-hash-1> <commit-hash-2> ...
git cherry-pick <begin-hash>^..<eind-hash>

Gebruikvoorbeeld:

Stel dat er een tak feature is met de commits A, B, C, en een tak develop. Alleen commit B moet worden overgezet naar develop.

  1. Schakel over naar de tak develop:
    git checkout develop
    
  2. Voer cherry-pick uit voor commit B (ervan uitgaande dat de hash abcdef is):
    git cherry-pick abcdef
    

Als er conflicten ontstaan, moeten deze worden opgelost en vervolgens doorgaan (git cherry-pick --continue) of de operatie afbreken (git cherry-pick --abort).

Alternatieven:

  • git merge: Voegt alle wijzigingen van een tak samen met een andere.
  • git rebase: Verplaatst of combineert een reeks commits op een nieuwe basiscommit.

git cherry-pick is handig wanneer je selectief bugfixes of kleine functionele wijzigingen tussen takken wilt overzetten.