So löschst du Xcode DerivedData gefahrlos
In DerivedData legt Xcode Build-Produkte und Indizes ab, und Xcode kann alles davon neu erzeugen. Du kannst den Ordner löschen, sobald Xcode und alle laufenden Builds beendet sind, nur dauern der nächste Build und die Indexierung dann länger. Lass Xcode-Archives und deine Projektordner in Ruhe, denn die liegen woanders und lassen sich nicht neu erzeugen.
Das Wichtigste in Kürze
- Kurz gesagt. Xcode kann alles in DerivedData neu erzeugen. Du kannst den Ordner also löschen, sobald Xcode und laufende Builds beendet sind. Der nächste Build dauert dann länger.
- Worauf du achten solltest. Lass Xcode-Archives und deine Projektordner in Ruhe. Die liegen woanders und lassen sich nicht neu erzeugen.
- Mit Mint. Mint listet DerivedData unter Safe to clean auf, Projekt für Projekt. Die Zeilen sind von Anfang an angehakt, weil Xcode alles davon wieder erzeugt.
Wo DerivedData liegt
Standardmäßig liegt der Ordner unter ~/Library/Developer/Xcode/DerivedData, mit je einem Unterordner pro Projekt oder Workspace. Jeder Ordnername besteht aus dem Projektnamen und einer zufälligen Zeichenfolge, du kannst die Ordner also leicht auseinanderhalten. Du kommst auch über Xcode dorthin: Öffne Settings, wechsle zu Locations und klick auf den kleinen Pfeil neben dem DerivedData-Pfad.
Die Archives liegen gleich nebenan in ~/Library/Developer/Xcode/Archives. Darin stecken die Builds, die du exportiert hast, und die Symboldateien, die du brauchst, um Absturzberichte dieser Builds zu lesen. Lass sie bei dieser Bereinigung außen vor.
Simulator-Runtimes und Gerätedaten bereinigst du auf anderem Weg
Warum unsere erste Zählung des Simulator-Speichers falsch war
Von Hand löschen
Wenn ein einzelnes Projekt Probleme macht, lösch nur dessen Ordner. Wenn du Platz zurückhaben willst, sortier die Ordner nach Datum und entferne die von Projekten, die du länger nicht geöffnet hast.
- Lass laufende Builds, Tests und Previews fertig werden und beende dann Xcode.
- Öffne den Ordner DerivedData und sieh dir bei jedem Unterordner Name, Datum und Größe an.
- Leg die Projektordner, die du ausgewählt hast, in den Papierkorb.
- Öffne dein aktuelles Projekt, lass Xcode es indexieren und bauen, und leere danach den Papierkorb.
Was Mint beiträgt
Mint führt DerivedData auf der Seite „Disk“ unter Safe to clean auf, aufgeteilt in Zeilen, damit du Projekt für Projekt auswählen kannst. Die Zeilen sind von Anfang an angehakt, weil Xcode alles davon wieder erzeugt. Lass laufende Builds fertig werden und beende Xcode, bevor du auf „Clean“ klickst, oder entferne den Haken bei dem Projekt, das du gerade baust.
„Clean“ löscht die angehakten Zeilen nach einer einzigen Bestätigung endgültig. Build-Artefakte in den Papierkorb zu legen, würde erst Platz freigeben, wenn du ihn leerst. Derselbe Scan findet auch Simulator-Caches, Caches von Paketmanagern und node_modules-Ordner.
Häufig gestellte Fragen
Kann ich Xcode DerivedData gefahrlos löschen?
Ja, solange gerade nichts gebaut wird. Xcode erzeugt den Ordner neu. Der Preis ist ein langsamerer nächster Build und eine neue Runde Indexierung.
Lösche ich mit DerivedData auch meinen Code?
Nein. Dein Quellcode liegt in deinem Projektordner. Prüf vor dem Löschen den Pfad, damit du nicht aus Versehen einen Projektordner oder den Ordner Archives auswählst.
Kann die App-Store-Edition von Mint DerivedData bereinigen?
Nein. Die App-Store-Edition kommt nicht an ~/Library heran, deshalb gehört das Bereinigen von DerivedData zur Direct- und zur Setapp-Edition.
Sieh nach, wie viel DerivedData du hast
Starte einen Scan in Mint, öffne Safe to clean und lösch die Projektordner, die du nicht mehr brauchst.