Hur man rensar Xcode-cacheminnen på Mac (DerivedData, arkiv, simulatorer)
Hur man rensar Xcode-cacheminnen på Mac (DerivedData, arkiv, simulatorer)
Om du bygger iOS- eller macOS-appar är Xcode ett av de snabbaste sätten att förbruka diskutrymme. DerivedData, arkiv, simulatorer och SwiftPM-cacheminnen kan växa till tiotals gigabyte utan någon varning i lagringsöversikten.
Den här guiden förklarar vad varje mapp gör, vad du kan radera säkert och hur du automatiserar rensningen. För en bredare lagringsstrategi, se hur du frigör diskutrymme på Mac.
Varför Xcode använder så mycket utrymme
Xcode lagrar flera oberoende kategorier av data:
- DerivedData — mellanliggande byggprodukter, index och modulcacheminnen. Säkert att radera; Xcode kommer att bygga om vid nästa kompilering.
- Arkiv — release-byggen för App Store Connect och ad-hoc-distribution. Gamla arkiv glöms ofta bort.
- Simulatorer — fullständiga enhets-runtime-bilder. Att ta bort oanvända runtimes frigör stora mängder utrymme.
- SwiftPM — checkouts och byggartefakter under
.buildoch SwiftPM-cacheminnen. - Enhetsstöd — symboler för anslutna iOS-enheter; äldre versioner kan tas bort om du inte längre testar dessa OS-versioner.
Inget av detta är ”din källkod”. De är reproducerbara artefakter, vilket är anledningen till att det oftast är låg risk att radera dem.
Rensa DerivedData manuellt
- Avsluta Xcode.
- Öppna Finder och tryck på Shift + Kommando + G.
- Klistra in:
~/Library/Developer/Xcode/DerivedData - Radera innehållet (eller hela mappen). Xcode kommer att återskapa den.
Alternativt, i Xcode: Inställningar → Platser → Derived Data och klicka på pilen för att öppna mappen i Finder.
Ta bort gamla arkiv
Arkiv finns under:
~/Library/Developer/Xcode/Archives
Varje daterad mapp är ett Xcode-arkiv. Radera arkiv för gamla versioner som du inte längre behöver distribuera eller felsöka. Behåll de senaste om du fortfarande symboliserar kraschloggar från dessa byggen.
Trimma simulator-runtimes
- Öppna Xcode → Inställningar → Plattformar (eller Komponenter på äldre Xcode).
- Ta bort iOS/watchOS/tvOS runtimes som du inte längre använder.
Du kan också radera data under ~/Library/Developer/CoreSimulator — men föredra att ta bort plattformar via Xcode först för att undvika att bryta aktiva projekt.
SwiftPM och CocoaPods
- SwiftPM: Checkouts under
~/Library/Caches/org.swift.swiftpmoch projektets.build-mappar. - CocoaPods:
Pods-mappen kan återskapas medpod install.
Om du är osäker, behåll en säkerhetskopia eller använd versionskontroll innan du raderar stora mappar inuti ett projekt.
Automatisera Xcode-rensning med NythyCleaner
NythyCleaner inkluderar en sektion för Utvecklare / Xcode som skannar vanliga utvecklarsökvägar, sammanfattar hur mycket utrymme varje kategori använder och låter dig rensa dem i ett enda arbetsflöde. Du kan para ihop det med:
- Diskutrymme — treemap-vy för att se var utrymmet tar vägen utöver Xcode.
- Systemrensning — cacheminnen och loggar som ackumuleras bredvid Xcode.
Säkerhetschecklista
- Stäng Xcode innan du raderar DerivedData eller stora simulator-data.
- Radera inte dina
~/Developer- eller projektmappar om du inte avser det. - Behåll nya App Store-arkiv om du fortfarande behöver ladda upp eller felsöka matchande byggen.
Sammanfattning
| Plats | Typiskt innehåll | Säkert att radera? |
|---|---|---|
| DerivedData | Byggresultat, index | Ja (byggs om) |
| Arkiv | IPA/IPA-relaterade arkiv | Ja, om föråldrade |
| Simulatorer | Runtime-bilder | Ja, oanvända runtimes |
| SwiftPM-cacheminnen | Beroenden, byggen | Vanligtvis ja |
Att rensa Xcode-cacheminnen regelbundet håller SSD-enheter snabba och undviker oväntade ”disk full”-fel under byggen.