AskCleanAskClean

איך למחוק Xcode Archives ישנים בלי לאבד סמלי קריסה

צוות AskClean · עודכן 2026-07-31

מחקו Xcode Archive רק אחרי שווידאתם שהגרסה אינה מופצת עוד ושקובץ dSYM שלה לא יידרש להמרת דוחות קריסה לשמות סמלים. עברו על ה-builds ב-Organizer, שמרו builds פעילים של App Store, TestFlight, Enterprise ו-Ad Hoc, והעבירו לפח האשפה רק archives שהוצאו משימוש.

Xcode Archives מחולקים לגרסאות פעילות מוגנות ול-builds ישנים לבדיקה
Archive הוא הוכחת release ולא מטמון: הגנו על builds פעילים ובדקו את השאר אחד-אחד.

Archive אינו מטמון

הפקודה Product > Archive יוצרת .xcarchive עם קובץ ה-binary המדויק, metadata ובדרך כלל dSYM תואם בתוך ~/Library/Developer/Xcode/Archives. אפשר לבנות מחדש DerivedData מקוד המקור; dSYM תואם ל-UUID של build מסוים, והידור מחדש של אותו commit אינו יוצר תחליף זהה.

בדקו את ה-builds לפני המחיקה

ב-Window > Organizer > Archives אפשר לראות אפליקציה, גרסה, מספר build, תאריך ומצב הפצה. שמרו כל build שעדיין מותקן או נמצא בתקופת התמיכה וניתוח הקריסות. גיל הקובץ לבדו אינו קריטריון בטוח למחיקה.

  1. פתחו Window > Organizer ובחרו Archives.
  2. רשמו builds פעילים של App Store, TestFlight, Enterprise ו-Ad Hoc.
  3. אמתו את קובצי dSYM וגבו archives שאין להם תחליף.
  4. סמנו רק builds פנימיים שננטשו או גרסאות שאינן נתמכות.
  5. מחקו אחד-אחד, בדקו את הנותרים ורק אז רוקנו את פח האשפה.

Build ישן עשוי להישאר מותקן חודשים; החליטו לפי מצב ההפצה והתמיכה, לא לפי התאריך בלבד.

מחקו באופן הפיך

העדיפו את Organizer ומחקו מועמד אחד בכל פעם. השתמשו ב-Finder רק אם Organizer אינו קורא חבילה ישנה, ולאחר השוואת Info.plist לרשימת הבדיקה. אל תשנו את תוכן ה-.xcarchive ואל תרוקנו את פח האשפה לפני האימות.

קבעו מדיניות שמירה

לכל release תעדו את מיקום ה-archive, העלאת הסמלים, הגיבוי ותאריך המחיקה. כשיש מחסור דחוף במקום התחילו ב-DerivedData ובנתונים שניתנים לבנייה מחדש. AskClean מציג Archives בנפרד ואינו מתייחס אליהם כמטמון למחיקה המונית.

שאלות נפוצות

אפשר למחוק את כל תיקיית Archives?

לא בלי בדיקה. ייתכן שהיא מכילה את ה-binary וה-dSYM היחידים של גרסה שהופצה.

האם האפליקציה תוסר מ-App Store?

לא. יאבד רק התוצר המקומי שמשמש לייצוא מחדש או להמרת דוח הקריסה של אותו build לשמות סמלים.

אפשר ליצור מחדש dSYM מאותו commit?

לא באופן אמין; הוא חייב להתאים בדיוק ל-UUID של ה-binary שהופץ.

מקורות

מדריכים נוספים לאחסון של מפתחים