Site icon AppTractor

Как очистить Xcode от мусора и освободить ценное дисковое пространство на вашем Mac

Как разработчик Swift, работающий с Xcode уже много лет, я поняла, что для поддержания оптимальной производительности необходимо поддерживать чистоту среды разработки. В этом руководстве я покажу вам, как эффективно удалить файлы, связанные с Xcode, освободить драгоценное дисковое пространство и ускорить рабочий процесс разработки.

Почему Xcode занимает так много места?

Прежде чем приступить к очистке, давайте разберемся, что и зачем хранит Xcode:

  1. Файлы системы сборки: система сборки Xcode создает промежуточные файлы для ускорения последующих сборок
  2. Данные индексирования: для дополнения кода и быстрой навигации
  3. Символы отладки: для отладки приложений
  4. Файлы симулятора: для тестирования на различных версиях iOS и устройствах
  5. Файлы кэша: для повышения скорости компиляции
  6. Документация: для автономного доступа к документации Apple

Давайте углубимся в каждую категорию и разберемся, что можно безопасно удалить.

Проверка дискового пространства на Mac

Можно перейти в системные настройки и в хранилище, чтобы узнать, сколько памяти используется:

Как очистить Xcode от мусора и освободить ценное дисковое пространство на вашем 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

Лучшая практика: перед удалением архивов:

Кэш 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:

Управление исполняемыми файлами симулятора

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 очень важно для оптимальной производительности разработки, но важно быть избирательным к тому, что вы удаляете. Регулярное обслуживание с помощью этих безопасных методов очистки поможет поддерживать среду разработки в рабочем состоянии, сохраняя важные файлы.

Помните:

Следуя этим рекомендациям, вы обеспечите чистую и эффективную среду разработки, не рискуя своей способностью эффективно отлаживать и собирать проекты.

Примечание: перед выполнением любых операций по очистке всегда создавайте резервные копии важных файлов, а если сомневаетесь, используйте встроенные в Xcode опции очистки, а не удаляйте файлы вручную.

Exit mobile version