Навън е хубаво, топло е, птичките пеят, но сървърите отново се счупиха. Веднага изниква в съзнанието ви „Ами сега?!„. След дълги проверки установявате, че единствения начин да бъде оправен бързо проблемът, е да се прехвърли само определен commit от develop разклонението на проекта ви.
Ако използвате Git за Version Control, то вашето решение е git cherry-pick.
Каква е ситуацията:
Имаме две разклонения (master – основно, в което са промените за LIVE) и (develop – в което са текущите промени, които все още не са готови, за да бъдат прехвърлени). Намираме, че бъгът, е оправен в commit 5f55248. Трябва да прехвърлим този commit в master разклонението.
За да го прехвърлим, първо трябва да преминем към master.
git checkout master
След като сме преминали на master можем да посочим кой commit ще прехвърляме:
git cherry-pick 5f55248
Командата изисква един параметър, който е номерът на commit.
На git cherry-pick може да се гледа като git-merge, но дори и да има конфликти след като се изпълни merge, операцията се счита за успешна. Последната стъпка е да качим отново промените на master.
git push origin master