Xcode auf dem Mac vollständig deinstallieren, ohne Projekte oder dSYMs zu verlieren
AskClean-Team · Aktualisiert 2026-09-01
Sichere vor der vollständigen Xcode-Deinstallation deine Quellprojekte und behalte Archives und dSYMs, die du noch für veröffentlichte Builds brauchst. Entferne danach die App und prüfe DerivedData, Simulatoren, DeviceSupport und Befehlszeilenwerkzeuge einzeln.

Vor der Deinstallation nicht wiederherstellbare Daten sichern
Projektordner sind keine Xcode-Reste. Sichere Repositorys, nicht eingecheckte Dateien, lokale Pakete und Assets. Behalte außerdem Archives/dSYMs für weiterhin verteilte App-Store-, TestFlight- oder Kunden-Builds sowie benötigte Simulator-Zustände.
- Beende zuerst Xcode. DerivedData zu löschen, während Xcode läuft, kann den Indexer durcheinanderbringen, und Dateien, die Xcode geöffnet hat, werden womöglich nicht sauber gelöscht.
- Finde den Ordner: Öffne in Xcode Settings > Locations und klicke auf den kleinen Pfeil neben dem DerivedData-Pfad, um ihn im Finder anzuzeigen. Oder drücke im Finder Umschalt-Befehl-G und gib ~/Library/Developer/Xcode/DerivedData direkt ein.
- Sortiere die Projekt-Unterordner nach Größe, wähle die aus, die weg sollen (oder mit Befehl-A alle), und bewege sie in den Papierkorb. Erst in den Papierkorb zu verschieben ist die sicherere Gewohnheit — falls du es dir anders überlegst, holst du alles sofort zurück.
- Alternativ vom Terminal aus: rm -rf ~/Library/Developer/Xcode/DerivedData löscht alles in einem Rutsch. Das ist bei sehr großen Ordnern schneller als der Finder — lies aber erst den Hinweis unten, bevor du es nutzt.
- Öffne Xcode wieder und baue. Rechne damit, dass der erste Build jedes Projekts spürbar länger dauert und „Indexing“ eine Weile in der Aktivitätsleiste läuft — beides sind einmalige Kosten.
Vorsicht mit rm -rf: Es umgeht den Papierkorb und löscht endgültig, ohne Rückgängig. Tippe den Pfad exakt, führe es für diese Aufgabe nie mit sudo aus, und wenn du dich im Terminal nicht wohlfühlst, erledigt der Finder-Weg denselben Job umkehrbar.
DerivedData löschen
Es gibt drei Wege, und alle enden am selben Ort. Xcodes Befehl „Clean Build Folder“ (Product > Clean Build Folder oder Umschalt-Befehl-K) leert nur die Build-Produkte des aktuell geöffneten Projekts — nützlich gegen einen kaputten Build, aber am Speicherplatz ändert er kaum etwas. Um echten Platz zurückzugewinnen, löschst du die DerivedData-Ordner selbst.
Projektweise zu löschen ist die chirurgische Variante: Behalte DerivedData für die zwei, drei Projekte, die du täglich baust, und entferne die Ordner für alles andere. Alles auf einmal zu löschen ist die schnelle Variante, und auch das ist in Ordnung — du zahlst nur die Kosten des kompletten Neubaus bei jedem Projekt gleichzeitig.
Die App über den ursprünglichen Installationsweg entfernen
Beende Xcode und Simulator und verschiebe die richtige Xcode.app im Finder in den Papierkorb. Lösche /Library/Developer/CommandLineTools nicht automatisch; Git, Homebrew, clang und Build-Skripte können weiterhin davon abhängen.
Paketmanager-Caches (SwiftPM, CocoaPods, npm, Homebrew)
Paketmanager behalten jede Abhängigkeit, die sie je geladen haben, damit künftige Installationen schnell gehen. Das ist gute Technik und schlechte Festplattenhygiene: Die Caches wachsen nur, und auf einer Maschine mit ein paar Jahren an Projekten summieren sie sich still auf 10–20 GB. Alle lassen sich gefahrlos leeren — im schlimmsten Fall lädt deine nächste Installation die Pakete neu herunter.
Der Swift Package Manager cacht geladene Pakete unter ~/Library/Caches/org.swift.swiftpm, und die aufgelösten Checkouts jedes Projekts liegen zusätzlich in dessen DerivedData-Ordner — wer DerivedData leert, leert die also gleich mit. Den geteilten Cache kannst du im Finder löschen oder mit rm -rf auf diesem Pfad.
Vor dem Leeren des Papierkorbs prüfen
Prüfe Applications, laufende Prozesse und xcode-select -p erneut. Vergewissere dich, dass Projekte, benötigte Archives/dSYMs und Simulator-Daten vorhanden sind, bevor du den Papierkorb leerst. Die Systemdaten-Anzeige kann sich verzögert aktualisieren.
Sicherheitsübersicht für die vollständige Deinstallation
Xcode sicher entfernen und wiederherstellbare Caches, Archives, DeviceSupport, Simulator-Daten und Command Line Tools getrennt beurteilen.
| Entscheidung | Hier prüfen oder handeln | Folge und Prüfung |
|---|---|---|
| Vor der Deinstallation nicht wiederherstellbare Daten sichern | Projects / Xcode Organizer / Archives | Projektordner sind keine Xcode-Reste. Sichere Repositorys, nicht eingecheckte Dateien, lokale Pakete und Assets. Behalte außerdem Archives/dSYMs für weiterhin verteilte App-Store-, TestFlight- oder Kunden-Builds sowie benötigte Simulator-Zustände. |
| Die App über den ursprünglichen Installationsweg entfernen | /Applications/Xcode.app / Finder | Beende Xcode und Simulator und verschiebe die richtige Xcode.app im Finder in den Papierkorb. Lösche /Library/Developer/CommandLineTools nicht automatisch; Git, Homebrew, clang und Build-Skripte können weiterhin davon abhängen. |
| Vor dem Leeren des Papierkorbs prüfen | xcode-select -p / Activity Monitor | Prüfe Applications, laufende Prozesse und xcode-select -p erneut. Vergewissere dich, dass Projekte, benötigte Archives/dSYMs und Simulator-Daten vorhanden sind, bevor du den Papierkorb leerst. Die Systemdaten-Anzeige kann sich verzögert aktualisieren. |
FAQ
Kann ich ~/Library/Developer vollständig löschen?
Nein. Dort liegen neben wiederherstellbarem DerivedData auch Archives/dSYMs, DeviceSupport, Runtimes und Simulator-Zustände. Jede Kategorie braucht eine eigene Entscheidung.
Ist es sicher, DerivedData zu löschen?
Ja — es ist eine der sichersten großen Löschungen auf einem Mac. DerivedData enthält nur Dateien, die Xcode aus deinem Quellcode erzeugt: Build-Produkte, Modul-Caches, Indizes und Logs. Dein Code, deine Projektdateien und deine Git-Historie liegen woanders und sind nie betroffen. Die einzige Folge: Der nächste Build jedes Projekts ist ein kompletter Neubau, und die Indizierung läuft erneut.
Wie oft sollte ich DerivedData leeren?
Es gibt keinen Pflichtrhythmus — leer es, wenn es groß genug ist, um zu stören, was für die meisten aktiven Entwickler alle ein bis zwei Monate heißt. Zwei Momente rechtfertigen es immer: wenn du schnell Speicherplatz brauchst und wenn ein Projekt unerklärliche Build-Fehler oder veraltete Codevervollständigung zeigt — da ist der DerivedData-Kahlschlag der Standard-Erstversuch.
Quellen