AskCleanAskClean

كيفية إزالة Xcode بالكامل من Mac دون فقدان المشاريع أو dSYM

فريق AskClean · آخر تحديث 2026-09-01

قبل إزالة Xcode بالكامل، انسخ مشاريع المصدر احتياطيًا واحتفظ بملفات Archives وdSYM اللازمة للإصدارات الموزعة. بعد ذلك انقل التطبيق إلى سلة المهملات وراجع DerivedData والمحاكيات وDeviceSupport وأدوات سطر الأوامر كلًا على حدة.

كيفية إزالة Xcode بالكامل من Mac دون فقدان المشاريع أو dSYM
قبل إزالة Xcode بالكامل، انسخ مشاريع المصدر احتياطيًا واحتفظ بملفات Archives وdSYM اللازمة للإصدارات الموزعة. بعد ذلك انقل التطبيق إلى سلة المهملات وراجع DerivedData والمحاكيات وDeviceSupport وأدوات سطر الأوامر كلًا على حدة.

احمِ البيانات التي لا يمكن إعادة إنشائها قبل إلغاء التثبيت

مجلدات المشاريع ليست بقايا Xcode. احمِ المستودعات والملفات غير الملتزم بها والحزم المحلية والموارد. احتفظ بملفات Archives/dSYM للإصدارات العاملة في App Store أو TestFlight أو بيئات العملاء، وبحالة Simulator المهمة.

  1. أنهِ Xcode أولًا. حذف DerivedData وXcode يعمل قد يترك مفهرِسه في حالة اضطراب، والملفات التي يفتحها Xcode قد لا تُحذف حذفًا نظيفًا.
  2. اعثر على المجلد: في Xcode، افتح Settings > Locations وانقر السهم الصغير بجوار مسار DerivedData لإظهاره في Finder. أو في Finder اضغط Command-Shift-G وأدخل ~/Library/Developer/Xcode/DerivedData مباشرة.
  3. رتّب مجلدات المشاريع الفرعية بحسب الحجم، وحدد ما تريد التخلص منه (أو Command-A لتحديدها كلها)، وانقلها إلى سلة المهملات. سلة المهملات أولًا هي العادة الأسلم — تستعيد فورًا إن غيّرت رأيك.
  4. من Terminal بدلًا من ذلك: الأمر rm -rf ~/Library/Developer/Xcode/DerivedData يحذف كل شيء دفعة واحدة. وهو أسرع من Finder مع المجلدات الضخمة جدًا، لكن اقرأ الملاحظة أدناه قبل استخدامه.
  5. أعد فتح Xcode وابنِ. توقّع أن يستغرق أول بناء لكل مشروع وقتًا أطول ملحوظًا، وأن ترى "Indexing" يعمل في شريط النشاط لبرهة — وكلاهما كلفة لمرة واحدة.

احذر مع rm -rf: فهو يتجاوز سلة المهملات ويحذف نهائيًا دون تراجع. اكتب المسار بدقة تامة، ولا تشغّله أبدًا بـ sudo لهذه المهمة، وإن لم تكن مرتاحًا في Terminal، فطريق Finder يؤدي المهمة نفسها بشكل قابل للتراجع.

احذف DerivedData

هناك ثلاث طرق لفعل ذلك، وكلها تنتهي إلى النتيجة نفسها. أمر Clean Build Folder في Xcode (Product > Clean Build Folder أو Command-Shift-K) لا يمسح إلا نواتج بناء المشروع المفتوح حاليًا — مفيد لإصلاح بناء غريب، لكنه بالكاد يحرّك مؤشر مساحة القرص. لاسترداد مساحة حقيقية، احذف مجلدات DerivedData نفسها.

الحذف مشروعًا بمشروع هو الخيار الجراحي: أبقِ DerivedData للمشروعين أو الثلاثة التي تبنيها يوميًا، وأزل مجلدات كل ما عداها. أما حذف المجلد بأكمله فهو الخيار السريع، ولا بأس به أيضًا — غير أنك تدفع كلفة إعادة البناء الكاملة لكل المشاريع دفعة واحدة.

أزل التطبيق بالطريقة نفسها التي ثُبّت بها

أغلق Xcode وSimulator وانقل Xcode.app الصحيح إلى سلة المهملات عبر Finder. لا تحذف /Library/Developer/CommandLineTools تلقائيًا؛ فقد يظل Git وHomebrew وclang ونصوص البناء يعتمدون عليها.

ذاكرات مديري الحزم (SwiftPM وCocoaPods وnpm وHomebrew)

يحتفظ مديرو الحزم بكل تبعية نزّلوها يومًا لتكون عمليات التثبيت المستقبلية سريعة. وهذه هندسة جيدة ونظافة قرص سيئة: الذاكرات لا تفعل إلا أن تنمو، وعلى جهاز شهد بضع سنين من المشاريع تتراكم بصمت إلى 10-20 GB. وكلها آمنة المسح — أسوأ الاحتمالات أن يعيد التثبيت التالي تنزيل الحزم.

يخزّن Swift Package Manager الحزم المنزَّلة مؤقتًا في ~/Library/Caches/org.swift.swiftpm، كما تقيم النسخ المستخرجة المحسومة لكل مشروع داخل مجلد DerivedData الخاص به — فمسح DerivedData يمسح تلك أصلًا. أما الذاكرة المشتركة فتحذفها من Finder، أو بـ rm -rf على ذلك المسار.

تحقق قبل إفراغ سلة المهملات

راجع Applications والعمليات وxcode-select -p. تأكد من بقاء المشاريع وArchives/dSYM المطلوبة وبيانات Simulator قبل إفراغ السلة. قد يتأخر تحديث System Data.

خريطة أمان الإزالة الكاملة

أزل Xcode بأمان وافصل الذاكرة المؤقتة القابلة لإعادة البناء عن Archives وDeviceSupport وبيانات Simulator وCommand Line Tools.

القرارموضع الفحص أو الإجراءالنتيجة والتحقق
احمِ البيانات التي لا يمكن إعادة إنشائها قبل إلغاء التثبيتProjects / Xcode Organizer / Archivesمجلدات المشاريع ليست بقايا Xcode. احمِ المستودعات والملفات غير الملتزم بها والحزم المحلية والموارد. احتفظ بملفات Archives/dSYM للإصدارات العاملة في App Store أو TestFlight أو بيئات العملاء، وبحالة Simulator المهمة.
أزل التطبيق بالطريقة نفسها التي ثُبّت بها/Applications/Xcode.app / Finderأغلق Xcode وSimulator وانقل Xcode.app الصحيح إلى سلة المهملات عبر Finder. لا تحذف /Library/Developer/CommandLineTools تلقائيًا؛ فقد يظل Git وHomebrew وclang ونصوص البناء يعتمدون عليها.
تحقق قبل إفراغ سلة المهملاتxcode-select -p / Activity Monitorراجع Applications والعمليات وxcode-select -p. تأكد من بقاء المشاريع وArchives/dSYM المطلوبة وبيانات Simulator قبل إفراغ السلة. قد يتأخر تحديث System Data.

الأسئلة الشائعة

هل يمكن حذف ~/Library/Developer بالكامل؟

لا. فهو يجمع DerivedData القابلة لإعادة البناء مع Archives/dSYM وDeviceSupport وruntime وحالة Simulator؛ راجع كل فئة منفردة.

هل حذف DerivedData آمن؟

نعم — إنه من أكثر عمليات الحذف الكبيرة أمانًا على جهاز Mac. لا يحوي DerivedData إلا ملفات يولّدها Xcode من مصدرك: نواتج البناء وذاكرات الوحدات المؤقتة والفهارس والسجلات. أما شفرتك وملفات مشروعك وتاريخ git فتقيم في مكان آخر ولا تتأثر أبدًا. العاقبة الوحيدة أن البناء التالي لكل مشروع إعادة بناء كاملة، والفهرسة تعمل من جديد.

كم مرة ينبغي أن أمسح DerivedData؟

لا يوجد جدول ملزم — امسحه حين يكبر بما يكفي ليهم، ما يعني لأغلب المطوّرين النشطين كل شهر أو شهرين. ولحظتان تبرّرانه دائمًا: حين تحتاج إلى مساحة قرص بسرعة، وحين يُظهر مشروع أخطاء بناء غير مفسَّرة أو إكمال كود متقادمًا، حيث مسح DerivedData هو الإصلاح الأول المعتاد.

المصادر

أدلة مرتبطة للإزالة الكاملة