image

На макбуке кончается место, и остро стоит вопрос что бы прибить. Не понятно, куда оно делось? Знакомая ситуация?

Возможно для кого-то будет новостью, что есть куча мусора, оставшаяся после разработки в XCode, который можно безболезненно прибить. Об этом и поговорим…

1. DeviceSupport


Папка DeviceSupport — самая жирная. Каждый проект генерит туда кучу данных, которые нужны для расшифровки крэш-логов (symbolicate crash logs ведь так переводится на русский?). Можно прибить все проекты или только старые.

Сразу оговорюсь — разрабатываю на Unity, каждая сборка проекта происходит в новый XCode-проект, поэтому мусора получилось много. Так же скажу, что для Unity проекта эти данные не особо нужны, там другие методы отслеживания крэшей, для разработки же на XCode, они, вероятно, необходимы. Подумайте, прежде чем что то удалить, и только потом удаляйте.

Удаляем тут:
~/Library/Developer/Xcode/DerivedData


2. Archives


Все что вы закачиваете в AppStore сначала архивируется, и складывается в папочку Archives. Просмотрите содержимое этой папки, возможно там есть древние и уже не актуальные версии, которые нет смысла хранить, или же которые были отклонены и даже никогда не публиковались. Их можно удалить.

Удаляем тут:
~/Library/Developer/Xcode/Archives


3. iOS Device Support


В этой папке хранятся данные с девайсов, которые вы когда либо присоединяли к компьютеру. Номер версии iOS как название папки, после обновления версии iOS создается новая папка. Как видно из начального скрина — у меня там хранятся версии с 5-ой, хотя Apple уже давно их не поддерживает, и их можно смело удалить (до 8-ой точно — Unity 2018 даже билдить под них не даст).

Удаляем тут:
~/Library/Developer/Xcode/iOS DeviceSupport


Есть еще папки по мелочи, типа логов, но там совсем мало места освобождается.
Если есть замечания или дополнения — пишите в комментах.

Комментарии (5)


  1. appsforlife
    13.05.2018 13:48

    Класс, спасибо. Думаю стоит еще добавить эти папки в список исключений Time Machine, чтобы и в бекап их не закидывать.


  1. voidMan
    13.05.2018 17:24

    В макОСи немало мусора скапливается, одним XCode дело не ограничивается :). Я бы посоветовал периодически CleanMyMac использовать или другую подобную утилиту (хотя это лучшая в своём роде на мой взгляд)


  1. z3us
    13.05.2018 18:42

    Если не хочется платить за clean my mac или автоматизировать скриптами (у нас на билд-нодах стоит чистка там где не надо incremental билды), то есть неплохая GUI утилитка github.com/waylybaye/XcodeCleaner
    Для удаления неподдерживаемых симуляторов можно использовать xcrun simctl delete unavailbale вместо способа, описанного в статье. Мне помогло освободить в районе 10Гб — старые симуляторы под iOS 7/8 и Watch OS1


  1. ftp27
    13.05.2018 19:35

    Не сказал бы что чистить архивы правильная стратегия. Желательно отбирать старые версии, а то есть риск потерять dSYM файлики в случае если в билде отключен байткод


  1. konchok
    13.05.2018 22:25

    Любая софтина типа CleanMyMac находит и вычищает всё это (и даже больше) за один присест.