Cara menyahpasang Xcode sepenuhnya pada Mac tanpa kehilangan projek atau dSYM
Pasukan AskClean · Dikemas kini 2026-09-01
Sebelum menyahpasang Xcode sepenuhnya, sandarkan projek sumber dan simpan Archives serta dSYM yang masih diperlukan untuk build diedarkan. Kemudian pindahkan aplikasi ke Tong Sampah dan semak DerivedData, simulator, DeviceSupport dan alat baris perintah secara berasingan.

Lindungi data yang tidak boleh dibina semula sebelum menyahpasang
Folder projek bukan baki Xcode. Lindungi repositori, fail belum commit, pakej setempat dan aset. Simpan Archives/dSYM versi yang masih digunakan di App Store, TestFlight atau pelanggan serta keadaan Simulator yang penting.
- Tutup Xcode dahulu. Memadamkan DerivedData semasa Xcode berjalan boleh membuatkan pengindeksnya keliru, dan fail yang sedang dibuka Xcode mungkin tidak terpadam dengan bersih.
- Cari foldernya: dalam Xcode, buka Settings > Locations, dan klik anak panah kecil di sebelah laluan DerivedData untuk mendedahkannya dalam Finder. Atau dalam Finder tekan Command-Shift-G dan masukkan ~/Library/Developer/Xcode/DerivedData secara terus.
- Isih subfolder projek mengikut saiz, pilih yang ingin anda buang (atau Command-A untuk semuanya), dan alihkannya ke Tong Sampah. Tong Sampah dahulu ialah tabiat yang lebih selamat — anda boleh memulihkan serta-merta jika berubah fikiran.
- Melalui Terminal pula: rm -rf ~/Library/Developer/Xcode/DerivedData memadamkan segalanya sekali gus. Ia lebih pantas daripada Finder untuk folder yang sangat besar, tetapi baca nota di bawah sebelum menggunakannya.
- Buka semula Xcode dan bina. Jangkakan binaan pertama setiap projek mengambil masa yang ketara lebih lama, dan jangkakan "Indexing" berjalan dalam bar aktiviti buat seketika — kedua-duanya kos sekali sahaja.
Berhati-hati dengan rm -rf: ia memintas Tong Sampah dan memadam secara kekal, tanpa boleh buat asal. Taip laluan dengan tepat, jangan sekali-kali menjalankannya dengan sudo untuk tugas ini, dan jika anda tidak selesa dalam Terminal, laluan Finder melakukan kerja yang sama secara boleh pulih.
Padamkan DerivedData
Ada tiga cara untuk melakukannya, dan semuanya berakhir di tempat yang sama. Arahan Clean Build Folder Xcode (Product > Clean Build Folder, atau Command-Shift-K) hanya mengosongkan produk binaan untuk projek yang sedang dibuka — berguna untuk membaiki binaan yang pelik, tetapi hampir tidak menggerakkan jarum ruang cakera. Untuk menuntut semula ruang sebenar, padamkan folder DerivedData itu sendiri.
Memadam mengikut projek ialah pilihan yang tepat sasaran: kekalkan DerivedData untuk dua tiga projek yang anda bina setiap hari, dan buang folder untuk yang selebihnya. Memadam keseluruhannya ialah pilihan pantas, dan itu pun tidak mengapa — cuma anda membayar kos binaan semula penuh pada semua projek sekali gus.
Nyahpasang aplikasi melalui kaedah pemasangan asal
Keluar daripada Xcode dan Simulator lalu pindahkan Xcode.app yang betul ke Tong Sampah melalui Finder. Jangan padam /Library/Developer/CommandLineTools secara automatik; Git, Homebrew, clang dan skrip build mungkin masih memerlukannya.
Cache pengurus pakej (SwiftPM, CocoaPods, npm, Homebrew)
Pengurus pakej menyimpan setiap kebergantungan yang pernah dimuat turunnya supaya pemasangan akan datang pantas. Itu kejuruteraan yang baik tetapi kebersihan cakera yang buruk: cache hanya membesar, dan pada mesin yang telah melalui beberapa tahun projek ia diam-diam terkumpul sehingga 10-20 GB. Semuanya selamat dikosongkan — senario terburuk hanyalah pemasangan seterusnya memuat turun semula pakej.
Swift Package Manager menyimpan pakej yang dimuat turun di ~/Library/Caches/org.swift.swiftpm, dan checkout yang diselesaikan bagi setiap projek turut berada di dalam folder DerivedData projek itu — jadi mengosongkan DerivedData sudah mengosongkan yang itu. Cache kongsi boleh anda padamkan daripada Finder, atau dengan rm -rf pada laluan tersebut.
Sahkan sebelum mengosongkan Tong Sampah
Semak Applications, proses dan xcode-select -p sekali lagi. Pastikan projek, Archives/dSYM yang perlu dan data Simulator kekal sebelum mengosongkan Tong Sampah. System Data mungkin dikemas kini lewat.
Peta keselamatan nyahpasang lengkap
Buang Xcode dengan memisahkan cache yang boleh dibina semula daripada Archives, DeviceSupport, data Simulator dan Command Line Tools.
| Keputusan | Tempat semakan atau tindakan | Akibat dan pengesahan |
|---|---|---|
| Lindungi data yang tidak boleh dibina semula sebelum menyahpasang | Projects / Xcode Organizer / Archives | Folder projek bukan baki Xcode. Lindungi repositori, fail belum commit, pakej setempat dan aset. Simpan Archives/dSYM versi yang masih digunakan di App Store, TestFlight atau pelanggan serta keadaan Simulator yang penting. |
| Nyahpasang aplikasi melalui kaedah pemasangan asal | /Applications/Xcode.app / Finder | Keluar daripada Xcode dan Simulator lalu pindahkan Xcode.app yang betul ke Tong Sampah melalui Finder. Jangan padam /Library/Developer/CommandLineTools secara automatik; Git, Homebrew, clang dan skrip build mungkin masih memerlukannya. |
| Sahkan sebelum mengosongkan Tong Sampah | xcode-select -p / Activity Monitor | Semak Applications, proses dan xcode-select -p sekali lagi. Pastikan projek, Archives/dSYM yang perlu dan data Simulator kekal sebelum mengosongkan Tong Sampah. System Data mungkin dikemas kini lewat. |
Soalan Lazim
Bolehkah seluruh ~/Library/Developer dipadam?
Tidak. Ia mengandungi DerivedData yang boleh dibina semula bersama Archives/dSYM, DeviceSupport, runtime dan keadaan Simulator; nilai setiap kategori berasingan.
Adakah selamat memadamkan DerivedData?
Ya — ia antara pemadaman besar paling selamat pada Mac. DerivedData hanya mengandungi fail yang dijana Xcode daripada sumber anda: produk binaan, cache modul, indeks dan log. Kod, fail projek dan sejarah git anda berada di tempat lain dan tidak sekali-kali terjejas. Satu-satunya akibat ialah binaan seterusnya bagi setiap projek ialah binaan semula penuh dan pengindeksan berjalan semula.
Berapa kerap patut saya mengosongkan DerivedData?
Tiada jadual yang diwajibkan — kosongkannya apabila ia cukup besar untuk diambil kira, iaitu setiap satu dua bulan bagi kebanyakan pembangun aktif. Dua saat sentiasa mewajarkannya: apabila anda perlukan ruang cakera segera, dan apabila projek menunjukkan ralat binaan yang tidak dapat dijelaskan atau pelengkapan kod yang basi, di mana pengosongan DerivedData ialah pembaikan pertama yang standard.
Sumber