Sobes.tech
Middle

Kas yra cherry-pick?

sobes.tech AI

Atsakymas iš AI

Cherry-pick yra Git operacija, leidžianti taikyti vieno ar kelių commit pakeitimus iš vieno šakos į kitą.

Pagrindinės savybės:

  • Leidžia selektyviai perkelti commit'us.
  • Kuria naujus commit'us tikslinėje šakoje su tais pačiais pakeitimais kaip ir originaluose.
  • Gali sukelti konfliktų, kuriuos reikia spręsti rankiniu būdu.

Tipiniai naudojimo scenarijai:

  • Klaidų taisymas išleidimo šakoje, kai pataisa buvo sukurta vystymo šakoje.
  • Atskirų funkcijų ar pataisų perkėlimas tarp šakų, nepažeidžiant kitų pakeitimų.

Procesas:

  1. Surasti SHA kodą (SHA) commit'ų, kuriuos reikia cherry-pick'inti.
  2. Perjungti į tikslinę šaką.
  3. Vykdyti komandą git cherry-pick <commit-hash>.
  4. Jei kyla konfliktų, juos išspręsti ir užbaigti cherry-pick'ą (git add ., git cherry-pick --continue).
  5. Jei norite cherry-pick'inti kelis commit'us, juos galima nurodyti atskirai tarpusavyje arba naudoti intervalą git cherry-pick <commit-hash-start>..<commit-hash-end>.

Pavyzdinė komanda:

# Taikyti vieną commit'ą
git cherry-pick a1b2c3d4

# Taikyti kelis commit'us
git cherry-pick a1b2c3d4 e5f6g7h8

# Taikyti commit'ų intervalą (neįtraukiant pradžios commit'o)
git cherry-pick a1b2c3d4..e5f6g7h8