Sobes.tech
Middle

Zašto se koristi komanda git cherry-pick?

sobes.tech АИ

Одговор од АИ

Za prenos pojedinačnih commitova iz jedne grane u drugu. Omogućava selektivnu primenu promena predstavljenih od strane određenog commita, bez potrebe za spajanjem cele grane.

Prednosti:

  • Izolovana primena promena.
  • Izbegavanje konflikata spajanja prilikom prenosa samo potrebnih commitova.
  • Održavanje čistoće istorije grana.

Sintaksa:

git cherry-pick <hash-commita>

Može se navesti više hash-ova commitova ili opseg commitova:

git cherry-pick <hash-commit-1> <hash-commit-2> ...
git cherry-pick <početni-hash>^..<krajnji-hash>

Primer upotrebe:

Pretpostavimo da postoji grana feature sa commit-ovima A, B, C, i grana develop. Potrebno je preneti samo commit B u develop.

  1. Prebacite se na granu develop:
    git checkout develop
    
  2. Izvršite cherry-pick za commit B (pretpostavljajući da je njegov hash abcdef):
    git cherry-pick abcdef
    

Ako dođu do konflikata, oni moraju biti rešeni, a zatim nastavite (git cherry-pick --continue) ili prekinite operaciju (git cherry-pick --abort).

Alternativne opcije:

  • git merge: Spaja sve promene iz jedne grane u drugu.
  • git rebase: Pomera ili kombinuje niz commitova na novi osnovni commit.

git cherry-pick je koristan kada je potrebno selektivno preneti ispravke grešaka ili manje funkcionalne promene između grana.