چریپیک
cherry-pick به شما اجازه میدهد یک کامیت خاص از یک برنچ دیگر را به برنچ فعلی اضافه کنید، بدون اینکه تمام برنچ را merge کنید.
کاربرد
فرض کنید روی برنچ main هستید و یک باگفیکس خاص در برنچ feature وجود دارد که میخواهید همین الان اعمال کنید:
git cherry-pick هشکامیت
هش کامیت را میتوانید با دستور git log پیدا کنید.
چریپیک چند کامیت
برای اعمال چند کامیت بهصورت جداگانه:
git cherry-pick هشاول هشدوم هشسوم
برای اعمال یک بازه از کامیتها:
git cherry-pick هشقدیمی..هشجدید
چریپیک بدون کامیت خودکار
اگر میخواهید تغییرات اعمال شوند اما کامیت خودکار نشود (برای بررسی بیشتر یا ویرایش):
git cherry-pick --no-commit هشکامیت
حل تعارض در cherry-pick
اگر cherry-pick با تعارض روبرو شد:
- تعارض را حل کنید
- فایل را استیج کنید:
git add فایل - ادامه دهید:
git cherry-pick --continue
برای لغو عملیات:
git cherry-pick --abort
مثال عملی
# یافتن هش کامیت مورد نظر در برنچ feature
git log feature --oneline
# رفتن به برنچ main
git switch main
# اعمال کامیت مشخص
git cherry-pick a1b2c3d
نکته
cherry-pick یک کامیت جدید با هش جدید میسازد که همان تغییرات کامیت اصلی را دارد. کامیت اصلی در برنچ خودش باقی میماند.