Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

Git Cherry-pick

آخر تحديث

يقوم git cherry-pick بنسخ التغييرات من commit واحد أو أكثر محدد وتطبيقها على فرعك الحالي على شكل commits جديدة. إنها الطريقة التي تأخذ بها إصلاحًا واحدًا من فرع آخر دون دمج ذلك الفرع بأكمله - وهي مفيدة لنقل hotfix إلى إصدار أقدم أو سحب commit واحد من فرع ميزة.

جرّب هذه الأوامر في ساحة الطرفية - وهي شِل حقيقي داخل متصفحك، دون الحاجة إلى تثبيت أي شيء.

الصياغة

CommandWhat it does
git cherry-pick <hash>يطبّق commit واحدًا على الفرع الحالي
git cherry-pick <a> <b>يطبّق عدة commits بالترتيب
git cherry-pick <a>..<b>يطبّق نطاقًا من الـ commits (باستثناء a)
git cherry-pick -n <hash>يطبّق التغييرات لكن لا يعمل commit بعد
git cherry-pick -x <hash>يدوّن الـ commit الأصلي في الرسالة

أثناء عملية cherry-pick

إذا واجه cherry-pick تعارضًا، فحلّه ثم تابع.

CommandWhat it does
git cherry-pick --continueيستأنف بعد حل التعارضات
git cherry-pick --abortيلغي ويستعيد الفرع
git cherry-pick --skipيتخطى الـ commit الحالي

الأسئلة الشائعة حول git cherry-pick

ماذا يفعل git cherry-pick؟
يأخذ التغييرات التي أدخلها commit محدد ويطبّقها على فرعك الحالي على شكل commit جديد تمامًا (مع hash جديد). على عكس merge أو rebase، لا يجلب فرعًا كاملًا - بل فقط الـ commit أو الـ commits التي تحددها.
متى ينبغي أن أستخدم cherry-pick؟
استخدمه عندما تحتاج إلى commit معيّن في مكان آخر - على سبيل المثال، لنقل إصلاح خطأ من main إلى فرع إصدار، أو سحب commit واحد مفيد من فرع ميزة دون دمج كل شيء. إذا أردت الفرع بأكمله، فاستخدم merge أو rebase بدلًا من ذلك.
كيف أقوم بعمل cherry-pick لعدة commits؟
أدرجها: git cherry-pick <a> <b> <c> يطبّق كلًا منها بالترتيب. للنطاق المتصل استخدم git cherry-pick <start>..<end>، الذي يطبّق كل commit بعد start حتى end وشاملًا له. أضف <start>^..<end> إذا أردت تضمين start نفسه.
ماذا لو تسبب cherry-pick في تعارض؟
يتوقف Git مؤقتًا ويعلّم الملفات المتعارضة. حلّها، ثم نفّذ git add على النتائج، ثم شغّل git cherry-pick --continue. للتراجع تمامًا، استخدم git cherry-pick --abort، الذي يستعيد فرعك إلى الحالة التي كان عليها قبل بدء cherry-pick.
هل يمكنني التدرّب على هذا عبر الإنترنت؟
نعم. افتح ساحة الطرفية لتشغيل git cherry-pick في شِل حقيقي داخل متصفحك - دون الحاجة إلى تثبيت أي شيء. كما يغطي مساق Git التفاعلي المجاني من Coddy نقل الـ commits بين الفروع خطوة بخطوة.
Coddy programming languages illustration

تعلّم Git مع Coddy

ابدأ الآن