Как разработчик Swift, работающий с Xcode уже много лет, я поняла, что для поддержания оптимальной производительности необходимо поддерживать чистоту среды разработки. В этом руководстве я покажу вам, как эффективно удалить файлы, связанные с Xcode, освободить драгоценное дисковое пространство и ускорить рабочий процесс разработки.
Почему Xcode занимает так много места?
Прежде чем приступить к очистке, давайте разберемся, что и зачем хранит Xcode:
- Файлы системы сборки: система сборки Xcode создает промежуточные файлы для ускорения последующих сборок
- Данные индексирования: для дополнения кода и быстрой навигации
- Символы отладки: для отладки приложений
- Файлы симулятора: для тестирования на различных версиях iOS и устройствах
- Файлы кэша: для повышения скорости компиляции
- Документация: для автономного доступа к документации Apple
Давайте углубимся в каждую категорию и разберемся, что можно безопасно удалить.
Проверка дискового пространства на Mac
Можно перейти в системные настройки и в хранилище, чтобы узнать, сколько памяти используется:
Вы можете нажать на значок информации в разделе Developer, чтобы увидеть более подробную информацию о файлах Xcode:
Вы можете увидеть, сколько места занимает Xcode. В моем случае он занимает 60 ГБ. Вы можете использовать системные настройки, чтобы очистить некоторое пространство, например «Xcode Caches».
К сожалению, использование настроек не дает всей информации о файлах Xcode. Чтобы лучше видеть это, я написала небольшое приложение для панели меню, которое проверяет все соответствующие папки и показывает занимаемое ими место:
Я обнаружила папки общим объемом 160 ГБ. Не советую удалять их все, но мне удалось освободить >100 ГБ с помощью процесса, который я вам сейчас покажу. Я бы посоветовала вам очищать компьютер раз в год.
Очистка производных данных (Derived Data)
Папка Derived Data часто является самым большим виновником в потреблении данных. Она содержит промежуточные файлы сборки, индексы и логи.
Как удалить производные данные:
# Method 1: Using Terminal rm -rf ~/Library/Developer/Xcode/DerivedData/* # Method 2: Open Finder and Navigate to the Folder open ~/Library/Developer/Xcode/DerivedData # Method 3: Through Xcode # Xcode → Preferences → Locations → Derived Data → Click Arrow → Show in Finder
Совет: вместо того чтобы удалять всё, вы можете выборочно удалить папки проектов в DerivedData, если вы работаете всего над несколькими проектами.
Удаление файлов поддержки устройств
Что такое файлы поддержки устройств?
Эти файлы содержат отладочные символы и файлы поддержки для устройств iOS, которые вы подключаете к Mac. Они очень важны для отладки на физических устройствах.
Безопасный подход к очистке
Вместо того чтобы удалять все, удалите только старые версии iOS, которые вы больше не поддерживаете:
# Navigate to device support open ~"/Library/Developer/Xcode/iOS DeviceSupport" #Delete older iOS versions
В примере видно, что я обеспечила поддержку iOS для версий 17.6, 18.1 и 18.1.1 Каждая из них занимает около 4 ГБ. В моем случае это нормально, и я не буду удалять ни одну из них.
Внимание: сохраняйте файлы для версий iOS, которые вы активно поддерживаете! Удаление текущих версий заставит Xcode снова загружать их при подключении устройств.
Очистка архивов
Архивы содержат:
- Собранные приложения
- Символы отладки
- Сертификаты распространения
- Логи сборки
Старые архивы могут занимать много места. Вот как ими управлять:
# Navigate to Archives folder open ~/Library/Developer/Xcode/Archives # Remove archives you no longer need
Лучшая практика: перед удалением архивов:
- Сохраните архивы размещений в App Store
- Сохраните архивы важных релизных версий
- Экспортируйте архивы, которые вы хотите сохранить, в отдельную резервную копию.
Кэш Xcode Playground
Xcode Playground генерирует дополнительные файлы, которые вы можете удалить следующим образом:
# Clean Playground Files rm -rf ~/Library/Developer/XCPGDevices/*
Предварительные просмотры Xcode
Когда вы запускаете превью в Xcode 15, он повторно использует те же файлы, что и при сборке. Однако до Xcode 15 он генерировал гораздо больше мусора.
# Open Xcode Previews folder open ~/Library/Developer/Xcode/UserData/Previews
Пожалуйста, не удаляйте файлы в этой папке вручную, иначе предварительные просмотры Xcode могут работать некорректно.
Для безопасного удаления файлов предварительного просмотра используйте xcrun в терминале, как показано ниже:
xcrun simctl --set previews delete all
Очистка кэшей
Xcode поддерживает различные кэши, которые вы можете безопасно очистить:
# Clean CoreSimulator caches rm -rf ~/Library/Developer/CoreSimulator/Caches/*
Управление симуляторами и файлами рантайма
Файлы симуляторов могут занимать много места. Вы можете проверить Xcode, чтобы узнать, сколько симуляторов используется:
Вы можете удалить их прямо в Xcode:
При использовании xcrun убедитесь, что он правильно настроен. В терминале можно выполнить следующее:
sudo xcode-select --reset
Я бы рекомендовала работать с терминалом. Вот как этим управлять:
# List all simulators xcrun simctl list devices # Remove only unavailable simulators xcrun simctl delete unavailable # Remove specific simulator xcrun simctl delete "iPhone 11 Pro Max" # Reset all simulator content and settings xcrun simctl erase all
Вы также можете управлять ими в Xcode:
- перейдите в раздел «Manage Run Destinations …»
- выберите пункт «Simulator»
- выберите симулятор и нажмите «-», чтобы удалить
Управление исполняемыми файлами симулятора
Xcode загружает рантайм файлы. Вы можете управлять ими в настройках Xcode на вкладке «Components».
Каждый раз, когда вы обновляете Xcode, он будет просить вас загрузить новую среду выполнения. В моем случае я использовала бета-версии Xcode 15, которые каждый раз загружали бета-версии iOS 18. Эти среды выполнения могут занимать много места. После того как я проработала на своем компьютере 3 года, они заняли более 100 ГБ.
Вы можете удалить эти программы из Xcode или через терминал, например, так:
# List simulator runtimes xcrun simctl runtime list // delete unavailble runtimes e.g. removes iOS 15 if you run Xcode 15 xcrun simctl runtime delete unavailable
Заключение
Поддержание чистоты среды Xcode очень важно для оптимальной производительности разработки, но важно быть избирательным к тому, что вы удаляете. Регулярное обслуживание с помощью этих безопасных методов очистки поможет поддерживать среду разработки в рабочем состоянии, сохраняя важные файлы.
Помните:
- Никогда не удаляйте все файлы поддержки устройств
- Храните архивы важных релизов
- Регулярно очищайте Derived Data
- Поддерживайте симуляторы только для активных версий iOS
Следуя этим рекомендациям, вы обеспечите чистую и эффективную среду разработки, не рискуя своей способностью эффективно отлаживать и собирать проекты.
Примечание: перед выполнением любых операций по очистке всегда создавайте резервные копии важных файлов, а если сомневаетесь, используйте встроенные в Xcode опции очистки, а не удаляйте файлы вручную.