Reputation: 1127
I'd like to remove old (replaceable?) data and DerivedData contents seem a likely candidate. Since it's name DerivedData, I assume that it's info that, if missing, would be generated during a build phase and if present, is used during that same phase. It seems logical then that I could delete any old project data without fear and if I should ever build that old project, the first time through would take longer than normal sine it has to recreate all this derived data.
Am I mistaken here?
Upvotes: 95
Views: 87557
Reputation: 61238
The Derived Data folder contains all the intermediate build information, debug- and release-built targets, as well as your project's index. It's helpful to delete the derived data when you have odd index problems (code completion not working right, constant re-indexing, or even just a slow project). Deleting the entire folder nukes this information for all projects Xcode 4 knows about.
The Archives folder (a sibling of Derived Data) contains the archived form of your targets. That is, a release build as well as dSYM data for later debugging. This you should not delete if you want to be able to debug deployed versions of your application.
You can nuke the derived data for a given project by opening the Organizer window and selecting the Projects tab. Select the desired project and click the Delete button next to the Derived Data path. This is more of a "surgical strike" for problem projects.
Upvotes: 128
Reputation: 36447
The content of 'Derived Data' is generated during Build-time. You can delete it safely. Follow below steps for deleting 'Derived Data' :
Upvotes: 43
Reputation: 1759
Yes those data are generated during the build time and you can delete them if you want, its not a issue.
It will be recreated when you build again.
Upvotes: 32