什么是Xcode Derived Data?為什么它很重要呢?
“Clean derived data”,當你遇到一些極其奇怪的構建問題時,你也許經常聽到這句話。
Derived Data是一個文件夾,它默認情況下位於:~/Library/Developer/Xcode/DerivedData
。它是Xcode存儲各種中間構建結果、生成索引等的位置。你可以在Xcode的preferences中設置Derived Data的位置:
在開發過程中,你是不是會遇到一些奇怪的構建問題?項目越復雜,你操作DerivedData的機會就越多。使用Swift大大增加了這種可能性。另外,DerivedData文件夾也因為其占用內存空間太大而臭名昭著。
你可以定期使用以下命令清理該文件夾:
rm -rf ~/Library/Developer/Xcode/DerivedData/*
清理該文件夾有個小缺點:清理之后構建首次構建項目的時候可能會增加構建時間。但是這不影響正常使用。而且還可以回收更多自由的空間內存。
對於經常開發iOS的同學,可以為該命令創建一個類型別名:
alias xcode-clean-derived="rm -rf ~/Library/Developer/Xcode/DerivedData/*"
這樣每次就可以在終端執行xcode-clean-derived命令,然后將DerivedData內容清空。