Как безопасно очистить Xcode DerivedData, кеши и симуляторы
Пошаговое руководство для разработчиков по очистке Xcode DerivedData, кешей модулей и неиспользуемых симуляторов iOS на Mac без нарушения среды сборки.

Для разработчиков iOS, macOS и visionOS Xcode является незаменимым инструментом. Но он также может стать значительным потребителем памяти на Mac разработчика. За месяцы сборки, тестирования и отладки Xcode накапливает хранилища индексов, артефакты промежуточной сборки, кэши модулей, архивы и среды выполнения симулятора.
Каталоги сборки Xcode и симуляторы могут со временем занимать значительное дисковое пространство, в зависимости от количества активных проектов, зависимостей и времени выполнения симулятора. Когда объем памяти заканчивается, операции сборки замедляются и могут возникнуть проблемы с индексацией. Вот как безопасно очистить Xcode DerivedData, построить кеши и неиспользуемые симуляторы iOS, не нарушая конфигурации вашего проекта.
Что такое Xcode DerivedData и почему он растет?
Xcode хранит информацию о времени сборки в центральном каталоге, расположенном по адресу ~/Library/Developer/Xcode/DerivedData. Внутри этого каталога Xcode создает специальную подпапку для каждого проекта и рабочего пространства, которое вы открываете.
DerivedData содержит: 1. Данные индексирования: карты синтаксиса, графики символов и перекрестные ссылки, используемые для завершения кода и быстрой помощи. 2. Сборка продуктов: промежуточные объектные файлы (.o), предварительно скомпилированные платформы и dSYM. 3. Кеши модулей: предварительно скомпилированные модули Swift и Clang. Поскольку артефакты из старых сборок, переименованных целей или архивных ветвей могут накапливаться, DerivedData имеет тенденцию расширяться до тех пор, пока не будет очищен.
Безопасно ли удалять DerivedData?
DerivedData содержит сгенерированные данные сборки и индексирования, которые Xcode обычно может воссоздать. Его удаление может вызвать полную перестройку и переиндексацию, поэтому убедитесь, что вы удаляете DerivedData, а не данные проекта или архива.
Очистка DerivedData — это стандартный шаг по устранению неполадок в сообществе разработчиков Apple, когда Xcode ведет себя нестабильно, отображает постоянные ошибки сборки или не может разрешить зависимости Swift Package Manager. Имейте в виду, что последующая сборка займет больше времени, поскольку Xcode должен переиндексировать вашу кодовую базу и перекомпилировать зависимости.
Ручные методы очистки DerivedData
Вы можете очистить DerivedData вручную, используя настройки Xcode или Finder, или через Терминал:
• Через настройки Xcode и Finder (рекомендуется): откройте Xcode → Настройки (команда + ,) → Местоположение. В разделе «Производные данные» щелкните маленький значок стрелки рядом с путем, чтобы открыть папку в Finder. Подтвердите, что вы находитесь внутри DerivedData, выйдите из Xcode, затем выберите и переместите подпапки проекта в Корзину. Это позволяет вам проверить, что удаляется, и при необходимости восстановить файлы из Корзину.
• Через терминал (расширенный): если вы предпочитаете рабочие процессы из командной строки, сначала закройте Xcode и запустите: rm -rf ~/Library/Developer/Xcode/DerivedData/* . Обратите внимание, что rm -rf немедленно удаляет файлы, не перемещая их в Корзину, поэтому внимательно проверьте путь перед его запуском.
Очистка неиспользуемых симуляторов iOS, watchOS и tvOS
Каждая среда выполнения симулятора, загруженная через Xcode, занимает несколько гигабайт памяти. Со временем, по мере установки новых обновлений ОС, старые версии симулятора остаются на вашем диске.
Чтобы проверить установленные симуляторы, запустите xcrun simctl list в Терминале. Чтобы удалить недоступные или потерянные устройства симулятора и очистить их кэш, запустите xcrun simctl delete unavailable. Вы также можете перейти в «Настройки Xcode» → «Компоненты», чтобы просматривать, управлять и удалять загруженные среды выполнения симулятора платформы, которые вы больше не тестируете.
Использование Smart Cleaner AI вместе с Xcode для обслуживания хранилища
При управлении хранилищем для разработчиков визуальный осмотр помогает определить, где сконцентрирована емкость диска.
Анализатор дисков Smart Cleaner AI может помочь вам проверить папки и файлы с большим объемом памяти, которые видны сканеру в вашей системе. Очистку, специфичную для Xcode, например, управление DerivedData, продуктами сборки и симуляторами, по-прежнему следует проверять и выполнять с использованием настроек Xcode, Finder и инструментов командной строки разработчика, чтобы конфигурации проекта оставались нетронутыми.
Как очистить Xcode DerivedData и симуляторы за 4 шага
- 1
Полностью выйдите из Xcode
Прежде чем приступать к удалению кэша, убедитесь, что Xcode и все активные экземпляры симулятора закрыты.
- 2
Найдите DerivedData в Finder.
Откройте «Настройки Xcode» → «Местоположения» и щелкните стрелку рядом с DerivedData или перейдите непосредственно к ~/Library/Developer/Xcode/DerivedData в Finder.
- 3
Удалить подпапки сборки DerivedData.
Выберите ненужные папки проекта внутри DerivedData и отправьте их в Trash. Xcode воссоздаст новые индексы при перестроении.
- 4
Управляйте симуляторами в компонентах или терминале
Используйте xcrun simctl delete unavailable в Терминале или откройте «Настройки Xcode» → «Компоненты», чтобы удалить неиспользуемые среды выполнения симулятора.
Проверка хранилища и освобождение дискового пространства
Smart Cleaner AI: Disk Clean помогает визуализировать использование диска, находить большие файлы и удалять ненужные кэши приложений, чтобы ваш Mac оставался быстрым и экономичным.
Частые вопросы
Приведет ли удаление DerivedData к удалению моего исходного кода или истории Git?▼
Нет. DerivedData содержит только временные артефакты сборки и индексы. Файлы вашего проекта, исходный код и репозитории Git остаются полностью нетронутыми.
Почему моя первая сборка работает медленно после удаления DerivedData?▼
Потому что Xcode должен перестроить свои внутренние индексы символов и перекомпилировать пакеты Swift с нуля. Последующие инкрементные сборки вернутся к полной скорости.
Где хранятся архивы Xcode?▼
Xcode хранит архивы дистрибутива в ~/Library/Developer/Xcode/Archives/. Вы можете просмотреть и удалить старые архивы разработки через Xcode Organizer (Окно → Органайзер).
Могу ли я переместить DerivedData на внешний SSD?▼
Да, в «Настройки Xcode» → «Местоположения» вы можете установить собственный путь DerivedData на внешнем диске NVMe, хотя внутренние твердотельные накопители Mac обеспечивают более высокую производительность сборки.
Как часто разработчикам следует очищать DerivedData?▼
Разработчики обычно очищают DerivedData при устранении ошибок индексации или компиляции, после крупных обновлений Xcode или при освобождении хранилища из старых, неактивных проектов.
Источники
Ready when you are
Download Smart Cleaner AI for Mac
Analyze Mac storage, safely clear system data caches, find large files, and remove app leftovers with on-device controls.
By using Smart Cleaner AI, you agree to our Terms of Use and Privacy Policy.