كيفية حذف فرع في Git محليًا وعن بعد

كيفية حذف فرع في Git محليًا وعن بعد

واحدة من أقوى ميزات Git هي فروعها خفيفة الوزن. إنها تسمح لك بالعمل في مراحل متوازية من التطوير بكفاءة. قد ينشئ المطور حتى فروعًا فردية لأخطاء منفصلة. تكاد الفروع تكاد تكون بلا تكلفة في الزمان والمكان.





يمكن لعب ألعاب ps4 على ps5

تتعامل العديد من تدفقات عمل git مع الفروع طويلة الأجل والمؤقتة. لذلك ، غالبًا ما تكون هناك حاجة لحذف الفروع أثناء التطوير. هناك حاجة في بعض الأحيان إلى حذف الفروع المشتركة ، من خادم بعيد ، وكذلك من الفروع المحلية.





لماذا تحذف فرع؟

أولاً ، إذا كنت لا تزال قادرًا على التعامل مع git ، فهناك فرصة جيدة جدًا لأنك ستنشئ فرعًا ثم تقرر بعد ذلك أنك لست بحاجة إلى ذلك. أو ربما تقوم بتجربة الفروع وترغب في التخلص منها بنفسك. هذا جيد لأن التفرع في git عملية خفيفة الوزن. إنه سريع جدًا ويستخدم مساحة القرص بكفاءة.





نتيجة لذلك ، تشجع العديد من تدفقات عمل تطوير git التفرع ، حتى للمهام الصغيرة جدًا أو القصيرة. على سبيل المثال ، الاستراتيجية الشائعة هي إنشاء فرع لإصلاح خطأ واحد. هذا صحيح حتى لو تضمن مؤلفًا واحدًا فقط إجراء تغيير من سطر واحد في ملف واحد.

لهذه الأسباب ، فإن إنشاء الفروع وحذفها هي عمليات تحتاج إلى فهم جيد. قد تجد نفسك غالبًا تحذف الفروع أثناء سير عمل التطوير النموذجي.



مستودع عينة مع الفروع

تشير الأمثلة التالية إلى مستودع نموذج بالهيكل التالي:

$ git branch -vv
1 dev 1ae41e8 [origin/dev] first commit
2 * main 1ae41e8 [origin/main] first commit

لاحظ أن كل فرع محلي له فرع المنبع المقابل من جهاز التحكم عن بعد: الأصل .





حذف فرع باستخدام سطر الأوامر

صيغة الأمر الأساسية لحذف فرع هي:

git branch (-d | -D) [-r] ...

أبسط شكل من أشكال الأمر يحذف فرعًا محليًا ، بشرط أن يتم دمج جميع تغييراته:





$ git branch -d dev

لا يمكنك حذف الفرع النشط حاليا ؛ إذا حاولت القيام بذلك ، فستتلقى رسالة مثل هذه:

error: Cannot delete branch 'main' checked out at '/tmp/sandbox'

عندما تسير الأمور على ما يرام ، سترى رسالة تأكيد:

Deleted branch dev (was 1ae41e8).

إذا حذفت فرعًا موجودًا محليًا فقط ، مع إجراء تغييرات غير مدمجة ، فستفقد هذه التغييرات. لذلك ، سترفض git حذف الفرع في مثل هذه الحالة افتراضيًا:

error: The branch ‘dev’ is not fully merged.
If you are sure you want to delete it, run 'git branch -D dev’.

كما توضح رسالة الخطأ ، يمكنك فرض الحذف باستخدام ملف علم. ومع ذلك ، سيسمح لك git بحذف فرع محلي غير مدمج إذا كان موجودًا عن بُعد:

warning: deleting branch ‘dev’ that has been merged to
'refs/remotes/origin/dev’, but not yet merged to HEAD.
Deleted branch dev (was 9a6d20b).

حذف فرع بعيد مختلف تمامًا. ستستخدم ملف دفع بوابة الأمر جنبًا إلى جنب مع علامة للحذف. بعد ذلك ، قم بتوفير اسم جهاز التحكم عن بعد (غالبًا الأصل ) واسم الفرع:

$ git push -d origin dev
To github.com:bobbykjack/sandbox.git
- [deleted] dev

حذف الفروع المحلية والبعيدة باستخدام GitHub Desktop

على عكس برنامج git لسطر الأوامر ، تطبيق سطح المكتب من GitHub سيسمح لك فقط بحذف الفرع النشط. يمكنك تنفيذ هذا الإجراء عبر فرع القائمة ، عن طريق تحديد ملف حذف الخيار وتأكيده:

لن يسمح لك GitHub Desktop بحذف الفرع الافتراضي - على سبيل المثال ، main - على الرغم من أن git نفسها تدعم هذا. إذا كان الفرع الافتراضي هو الفرع النشط حاليًا ، فسيقوم التطبيق بتعطيل إجراء القائمة.

إذا كان الفرع يمثل أيضًا فرعًا بعيدًا ، فإن GitHub Desktop يمنحك خيار حذفه من جهاز التحكم عن بُعد أيضًا:

حذف الفروع باستخدام GitKraken

GitCrack يعرض الفروع المحلية والبعيدة للمستودع الخاص بك في الشريط الجانبي الأيسر. يجب عليك حذف كل ملفبشكل منفصل.

مرر مؤشر الماوس فوق اسم الفرع المناسب وانقر فوق فرع قائمة الإجراءات التي تشبه ثلاث نقاط عمودية. من القائمة ، حدد حذف :

سترى رسالة تأكيد تخبرك أن هذه عملية مدمرة. يمكنك تأكيد رغبتك في المتابعة مع حذف زر:

يعكس السلوك الافتراضي لبرنامج سطر أوامر git ، يجب عليك أولاً التبديل إلى فرع آخر غير الفرع الذي تحذفه. بخلاف ذلك ، ستظهر لك رسالة خطأ:

حذف الفروع المحلية والبعيدة باستخدام البرج

حذف فرع بامتداد برج يشبه إلى حد بعيد حذف فرع مع GitKraken. تظهر الفروع المحلية والبعيدة في لوحة على الجانب الأيسر. انقر بزر الماوس الأيمن فوق أي فرع وحدد خيار الحذف من قائمة السياق:

يتمثل أحد الاختلافات الرئيسية في أنه يمكن حذف الفرع البعيد مع الفرع المحلي أثناء التأكيد:

حذف فرع على جيثب

يعمل GitHub فقط كمصدر بعيد ، لذا فإن الفروع هناك بعيدة بشكل افتراضي. إذا حذفت فرعًا باستخدام موقع GitHub على الويب ، فسيتعين عليك حذف الفرع المحلي المقابل باستخدام إحدى الطرق الأخرى هنا.

كما هو الحال مع تطبيق GitHub Desktop ، لن يسمح لك موقع GitHub بحذف الفرع الافتراضي. الخيار ببساطة لا يظهر. ومع ذلك ، فإن حذف الفرع أمر بسيط. من المستودع الشفرة الصفحة ، انقر فوق الفروع الرابط ، حدد موقع الفرع المراد حذفه ، ثم انقر فوق احذف هذا الفرع رمز يشبه سلة المهملات:

اعلم أنه لا توجد عمليات تحقق من التغييرات غير المدمجة ، لذلك في GitHub ، سيتم حذف الفرع على الفور. ومع ذلك ، نظرًا لأنه سيمثل دائمًا فرعًا بعيدًا ، يجب أن يكون هذا هو السلوك الذي تتوقعه.

لاحظ أنه بعد الحذف ، سترى زرًا لـ يعيد الفرع. ومع ذلك ، فهذه مجرد ميزة مفيدة للتراجع ، في حالة النقر فوق رمز الحذف عن طريق الخطأ. لا تعتمد عليها ، لأنه بمجرد التحديث أو الانتقال بعيدًا عن الصفحة ، ستفقد الخيار!

حذف الفروع المحلية والبعيدة على Bitbucket

لن يسمح لك Bitbucket ، مثل GitHub ، بحذف الفرع الافتراضي. يسمي Bitbucket هذا بـ الفرع الرئيسي في إعدادات المستودع . يمكنك حذف أي فرع آخر مدرج في الفروع علامة التبويب ، عبر المقابل لها أجراءات قائمة:

يمكنك أيضًا حذف أكثر من فرع في وقت واحد إذا كنت تقوم بعملية تنظيف كبيرة:

يعد حذف الفروع جزءًا من سير عمل Git النموذجي

يمكن أن تؤدي فروع Git إلى تعقيد سير عملك ، خاصةً مع الفروع المحلية والبعيدة والمتتبعة. ولكن من أجل التطوير اليومي البسيط ، فمن المحتمل أن تقوم بإنشاء وحذف الفروع المحلية طوال الوقت. هذا جانب أساسي من سير عمل git النموذجي الذي يجب أن تعتاد عليه.

يشارك يشارك سقسقة بريد الالكتروني كيفية استخدام فروع Git لهيكلة مشروع البرمجة الخاص بك

في هذه المقالة سنلقي نظرة على معنى تفريع الكود الخاص بك ، وكيفية القيام بذلك ، وطرق إدارة التحديثات لفرع git 'الرئيسي'.

اقرأ التالي
مواضيع ذات صلة
  • برمجة
  • جيثب
نبذة عن الكاتب بوبي جاك(تم نشر 58 مقالة)

بوبي متحمس للتكنولوجيا وعمل كمطور برمجيات لأكثر من عقدين من الزمن. إنه شغوف بالألعاب ، ويعمل كمحرر المراجعات في مجلة Switch Player ، ومنغمس في جميع جوانب النشر عبر الإنترنت وتطوير الويب.

المزيد من Bobby Jack

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك