Xcode ocupa demasiado espacio: ¿qué puedo borrar?

Actualizado el · 4 min de lectura

¿Dónde ocupa espacio Xcode?

La mayor parte no está en el propio Xcode.app, sino en ~/Library/Developer. Ahí se acumulan datos de compilación, símbolos de dispositivos, simuladores y archivos, que crecen con cada proyecto y cada versión de iOS.

  • ~/Library/Developer/Xcode/DerivedData: productos intermedios de compilación e índices.
  • ~/Library/Developer/Xcode/iOS DeviceSupport: símbolos de cada versión de iOS que has conectado.
  • ~/Library/Developer/Xcode/Archives: tus compilaciones archivadas, con sus archivos dSYM.
  • ~/Library/Developer/CoreSimulator/Devices: dispositivos simulados y sus datos.
  • ~/Library/Developer/CoreSimulator/Caches: cachés del simulador.

¿Qué puedo borrar sin riesgo?

Los siguientes datos son regenerables: Xcode los vuelve a crear cuando hace falta. Cierra Xcode antes para que no haya archivos en uso.

  • DerivedData: se puede borrar por completo; la siguiente compilación y la indexación tardarán más.
  • iOS DeviceSupport: carpetas de versiones antiguas de iOS con las que ya no pruebas; se vuelven a descargar al conectar un dispositivo.
  • Cachés de CoreSimulator: se vuelven a crear cuando hace falta.
  • Simuladores no disponibles: xcrun simctl delete unavailable elimina los dispositivos cuyo runtime ya no está instalado.

¿Qué deberías conservar?

Los Archives contienen los archivos dSYM de tus compilaciones publicadas. Sin ellos, los informes de fallos de esas versiones ya no se pueden simbolizar, así que conserva al menos los archivos de todas las versiones que siguen en manos de los usuarios y borra el resto desde Window › Organizer en Xcode.

Tampoco elimines a ciegas los dispositivos simulados con datos de prueba que aún necesites ni los runtimes de las plataformas para las que desarrollas. Y no borres nada de ~/Library fuera de las carpetas indicadas aquí.

¿Cómo elimino los runtimes de simulador?

Cada runtime de simulador suele ocupar varios gigas. Gestiónalos en Xcode › Ajustes › Plataformas (Preferences › Components en versiones antiguas de Xcode): selecciona un runtime y elimínalo con el botón de menos.

En Terminal, xcrun simctl runtime list muestra los runtimes instalados. Para eliminar dispositivos simulados concretos, usa Window › Devices and Simulators en Xcode.

¿Qué cachés de paquetes crecen junto a Xcode?

Los gestores de paquetes guardan sus propias cachés, que puedes vaciar sin riesgo: se vuelven a llenar en la siguiente descarga.

  • Homebrew: brew cleanup elimina versiones antiguas y descargas obsoletas.
  • CocoaPods: pod cache clean --all vacía la caché de pods.
  • Swift Package Manager: la caché está en ~/Library/Caches/org.swift.swiftpm; los paquetes se vuelven a descargar cuando hace falta.

Liberar espacio de Xcode con seguridad

  1. Cierra Xcode

    Cierra Xcode y el Simulador para que no haya archivos en uso.

  2. Borra DerivedData

    En el Finder, elige Ir › Ir a la carpeta, escribe ~/Library/Developer/Xcode/DerivedData y mueve su contenido a la Papelera.

  3. Elimina carpetas antiguas de DeviceSupport

    Abre ~/Library/Developer/Xcode/iOS DeviceSupport y borra las carpetas de versiones de iOS con las que ya no pruebas.

  4. Borra los simuladores no disponibles

    Ejecuta xcrun simctl delete unavailable en Terminal.

  5. Elimina los runtimes que no uses

    En Xcode › Ajustes › Plataformas, borra los runtimes de simulador que ya no necesites.

  6. Revisa tus Archives

    Abre Window › Organizer y borra solo los archivos de versiones que ya no estén en uso.

  7. Vacía las cachés de paquetes

    Ejecuta brew cleanup y pod cache clean --all si usas esas herramientas.

Preguntas frecuentes

¿Es seguro borrar DerivedData?

Sí. Xcode vuelve a crear DerivedData en la siguiente compilación; la primera compilación y la indexación tardarán un poco más. Cierra Xcode antes para que no haya archivos en uso.

¿Qué pasa si borro iOS DeviceSupport?

La próxima vez que conectes un dispositivo, Xcode volverá a descargar los símbolos correspondientes, lo que puede tardar unos minutos. Por eso es preferible borrar las carpetas de versiones antiguas de iOS que ya no uses.

¿Puedo borrar ~/Library/Developer entero?

No. También contiene Archives con archivos dSYM, dispositivos simulados con datos de prueba y datos de otras herramientas de desarrollo. Borra solo las carpetas regenerables.

¿Cuánto espacio se libera?

Depende mucho de cuántos proyectos, versiones de iOS y simuladores tengas. Compruébalo antes con du -sh ~/Library/Developer/* o con un mapa del disco para ver qué carpetas son las más grandes en tu Mac.