NythyCleaner
← Блог

Как очистить кэши Xcode на Mac (DerivedData, архивы, симуляторы)

10 мин чтения
#xcode#macos#разработчик#derived-data#очистка

Как очистить кэши Xcode на Mac (DerivedData, архивы, симуляторы)

Если вы разрабатываете приложения для iOS или macOS, Xcode — один из самых быстрых способов исчерпать дисковое пространство. Кэши DerivedData, Archives, симуляторов и SwiftPM могут вырасти до десятков гигабайт без какого-либо предупреждения в обзоре хранилища.

В этом руководстве объясняется, что делает каждая папка, что можно безопасно удалить и как автоматизировать очистку. Для более широкой стратегии хранения см. как освободить место на диске Mac.

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

Xcode хранит несколько независимых категорий данных:

  • DerivedData — промежуточные продукты сборки, индексы и кэши модулей. Безопасно для удаления; Xcode перестроит их при следующей компиляции.
  • Archives — релизные сборки для App Store Connect и ad-hoc распространения. Старые архивы часто забываются.
  • Simulators — полные образы среды выполнения устройств. Удаление неиспользуемых сред выполнения освобождает большое количество места.
  • SwiftPM — чекауты и артефакты сборки в .build и кэши SwiftPM.
  • Поддержка устройств — символы для подключенных устройств iOS; старые версии можно удалить, если вы больше не тестируете эти версии ОС.

Ничто из этого не является «вашим исходным кодом». Это воспроизводимые артефакты, поэтому их удаление обычно сопряжено с низким риском.

Очистка DerivedData вручную

  1. Закройте Xcode.
  2. Откройте Finder и нажмите Shift + Command + G.
  3. Вставьте: ~/Library/Developer/Xcode/DerivedData
  4. Удалите содержимое (или всю папку). Xcode пересоздаст ее.

Или в Xcode: Settings → Locations → Derived Data и нажмите стрелку, чтобы открыть папку в Finder.

Удаление старых архивов

Архивы находятся по адресу:

~/Library/Developer/Xcode/Archives

Каждая папка с датой — это архив Xcode. Удалите архивы для старых версий, которые вам больше не нужны для публикации или отладки. Сохраните недавние, если вы все еще символизируете отчеты о сбоях из этих сборок.

Сокращение сред выполнения симуляторов

  1. Откройте Xcode → Settings → Platforms (или Components в старых версиях Xcode).
  2. Удалите среды выполнения iOS/watchOS/tvOS, которые вы больше не используете.

Вы также можете удалить данные из ~/Library/Developer/CoreSimulator — но предпочтительнее сначала удалить платформы через Xcode, чтобы избежать нарушения работы активных проектов.

SwiftPM и CocoaPods

  • SwiftPM: Чекауты в ~/Library/Caches/org.swift.swiftpm и папки .build проекта.
  • CocoaPods: Папка Pods может быть пересоздана с помощью pod install.

Если вы не уверены, сделайте резервную копию или используйте систему контроля версий перед удалением больших папок внутри проекта.

Автоматизация очистки Xcode с помощью NythyCleaner

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

Контрольный список безопасности

  • Закройте Xcode перед удалением DerivedData или больших данных симулятора.
  • Не удаляйте папки ~/Developer или папки проекта, если вы не собираетесь этого делать.
  • Сохраняйте недавние архивы App Store, если вам все еще нужно загружать или отлаживать соответствующие сборки.

Сводка

РасположениеТипичное содержимоеБезопасно ли удалять?
DerivedDataВыходные данные сборки, индексыДа (перестраивается)
ArchivesАрхивы IPA/связанные с IPAДа, если устарели
SimulatorsОбразы среды выполненияДа, неиспользуемые среды выполнения
Кэши SwiftPMЗависимости, сборкиОбычно да

Регулярная очистка кэшей Xcode поддерживает высокую скорость SSD и позволяет избежать неожиданных ошибок «диск заполнен» во время сборок.