Gitda cherry-pick buyrug’i yordamida branchlar orasida ma'lum o'zgarishlarni samarador boshqarish va o'tkazishni o'rganing. Ushbu postda cherry-pick asbobidan foydalanishni o'rgatuchi to'liq qo'llanma va amaliy misollar beriladi. Bu kuchli asbobning potentsialini ishlatish orqali kod tarixini toza va tushunarli saqlash mumkin. Git cherry-pickning imkoniyatlaridan foydalanib, dasturlash samaradorligingizni va ish jarayoningizni yaxshilang.

gitcherry-pick

Git – bu kodlar tarixini boshqarish uchun ishlatiladigan ochiq manba'li dastur (open-source project). Git'ning buyrug'lari orasida, cherry-pick buyrug'i ajralib turadi. cherry-pick git-dagi muayyan bir commitni olish va uni boshqa bir branchga qo'shish imkonini beradi. Bu sizga ma'lum bir o'zgarishni bitta branchdan boshqasiga o'tkazishga yordam beradi, lekin boshqa o'zgarishlar bilan bog'liq bo'lmagan holda.

Keling, cherry-pick komandasi yordamida amaliyotlarni ko'rib chiqamiz. Bu misolda, bizda ikkita branch bor: master va feature.

  1. Avvalo, biz kodimizni qanday ko'rinishda ekanligini tekshiramiz. git log komandasi yordamida buni qilishimiz mumkin.
.
git log --oneline

Bu komanda sizga o'zgarishlarni yorituvchi qisqa izohlar bilan birgalikda commitlar tarixini ko'rsatadi.

Misol uchun, quyidagi kabi natijani ko'rishingiz mumkin:

.
3f6db14 (HEAD -> feature) Yangi funksitya kiritildi
2d9f334 Bug fix 2
0a2d5f7 Bug fix 1
bd2c6e2 (master) Dastlabki commit
  1. Biz Yangi funksitya kiritildi o'zgarishini master branchga o'tkazmoqchimiz. Bu uchun biz cherry-pick komandasidan foydalanamiz.
.
git checkout master
git cherry-pick 3f6db14

Bu komanda 3f6db14 hashi bilan belgilangan commitni master branchga nusxalab o'tkazadi.

  1. Endi, master branchimizdagi o'zgarishlarni tekshirishimiz mumkin:
.
git log --oneline

Quyidagi kabi natija ko'rishingiz mumkin:

.
3f6db14 (HEAD -> master) Yangi funksitya kiritildi
bd2c6e2 Initial commit

Bu, Added a new feature commitini master branchga nusxalab o'tkazganingizni ko'rsatadi.

Chetga qaramasdan, cherry-pick komandasi har doim muvaffaqiyatli amalga oshmidi. Agar biror commitda ikki branchdagi fayllar orasida zidliklar bo'lsa, Git sizga xabar beradi va siz ushbu muammolarni qo'lda hal qilishingiz kerak bo'ladi.

To'g'ri ishlatsangiz, cherry-pick juda kuchli asbob bo'lishi mumkin. Bu sizga biror branchdagi muayyan o'zgarishlarni tez va oson qayta ishlash imkoniyatini beradi, boshqa o'zgarishlarni o'zgartirmasdan. Bu sizning kod tarixingizni toza va tushunarliroq qiladi.