web-dev-qa-db-fra.com

Puis-je supprimer en toute sécurité le contenu du dossier de données Xcode Derived?

Je manque d’espace disque et j’ai vérifié auprès d’un utilitaire tiers que, notamment, le répertoire ~/Library/Developer/Xcode/DerivedData occupe environ 22 Go d’espace disque.

J'ai cherché stackoverflow et trouvé ce post

Comment puis-je supprimer en toute sécurité dans mon répertoire ~/Library/Developer/Xcode/DerivedData?

La réponse acceptée à cette question suggère que je ne devrais pas toucher/supprimer les dossiers de ce répertoire. alors ce que j'ai fait était

  • Trouvé un dossier de projet de construction existant pour une application disponible sur l'Appstore
  • Supprimé le dossier du répertoire dérivé
  • lancé XCode 5
  • Ouvrir ce projet
  • Construction propre
  • Testé et compilé sur un simulateur
  • Re-Archivé
  • Tout a fonctionné. Rien n'était cassé.

À moins d'avoir oublié quelque chose dans cette publication, je veux m'assurer, en demandant aux développeurs expérimentés, que si je supprime tous les dossiers de DerivedData, cela ne me fera pas de mal de construire, de tester et de compiler ces projets.

270
Sam B

Oui, vous pouvez supprimer directement tous les fichiers de DerivedData sous-dossier (Not DerivedData Folder).

Cela n'affectera pas votre travail de projet. Le contenu du dossier DerivedData est généré pendant la compilation et vous pouvez le supprimer si vous le souhaitez. Ce n'est pas un problème.

Le contenu de DerivedData sera recréé lorsque vous construirez à nouveau vos projets.

Xcode8 + mise à jour

Depuis l'option Xcode8 qui a supprimé le projet de l'onglet Fenêtre, vous pouvez toujours utiliser le premier moyen:

Xcode -> Preferences -> location -> click on small arrow button as i explain in my first answer.

Mise à jour Xcode7.3 Pour supprimer DeriveData d'un projet particulier, il vous suffit de suivre les étapes suivantes:

Allez à Window -> Project:

enter image description here

Vous pouvez trouver la liste des projets et accéder au dossier DerivedData ou supprimer directement le projet DerivedData de chaque projet.

enter image description here


Je ne travaille pas sur Xcode5, mais en 4.6.3 vous pouvez trouver le dossier DerivedData, comme indiqué dans l'image ci-dessous:

enter image description here

Après avoir cliqué sur Préférences ..

enter image description here

Vous obtenez cette fenêtre

enter image description here

350
Nitin Gohel

Je purge assez souvent les données dérivées pour avoir un alias. Cela peut résoudre les problèmes de construction. J'ai les éléments suivants dans /Users/Myusername/.bash_profile

alias purgeallbuilds='rm -rf ~/Library/Developer/Xcode/DerivedData/*'

Ensuite, dans le terminal, je tape purgeallbuilds, et tous les sous-dossiers de DerivedData sont supprimés.

113
William Jockusch

MISE À JOUR DE XCODE 7.2

(Fonctionne également pour 7.1.1)

  1. Cliquez sur Fenêtre puis sur Projets puis supprimez Données dérivées .

Comme ça:

enter image description here

Et puis supprimez-le ici:

enter image description here


J'espère que ça t'as aidé!

34
Lukesivi

MISE À JOUR DE XCODE 10

Sur l'onglet:

  1. Cliquez sur Xcode
  2. Préférences
  3. Emplacements -> Données dérivées

Vous pouvez accéder à toutes les données dérivées et les effacer en les supprimant.

33
Umitk
 $ du -h -d=1 ~/Library/Developer/Xcode/*

montre qu'au moins deux dossiers sont énormes:

 1.5G   /Users/horace/Library/Developer/Xcode/DerivedData
 9.4G   /Users/horace/Library/Developer/Xcode/iOS DeviceSupport

N'hésitez pas à supprimer des éléments dans les dossiers:

 rm -rf ~/Library/Developer/Xcode/DerivedData/*

et certains dans:

 open ~/Library/Developer/Xcode/iOS\ DeviceSupport/
23
ohho

Vient de créer un dépôt github avec un petit script, qui crée un disque RAM. Si vous pointez votre dossier DerivedData sur /Volumes/ramdisk, tous les fichiers seront supprimés après l’éjection du disque.

Cela accélère la compilation, élimine également ce problème

xc-launch repo

Meilleur lancé avec DTerm

17
Diego Freniche

XCode 8: Pour supprimer les données dérivées de votre projet actuel:

Cliquez sur le menu produit

Maintenez la touche Option

Cliquez sur Nettoyer le dossier de construction

11
Steve Yost

MISE À JOUR DE XCODE 10

Cliquez sur Xcode dans la barre d'état, puis sélectionnez Préférences .

Dans la fenêtre contextuelle, choisissez des emplacements avant le dernier segment.

Vous pouvez accéder au dossier Données dérivées avec une petite icône à droite

enter image description here

3
codeByThey

~/Library/Developer/Xcode/DerivedData

2
Ansal Antony

oui, sûr de supprimer, mon script recherche et nukes chaque instance qu'il trouve, facilement modifié en un répertoire local

#!/usr/bin/env bash
set -o errexit
set -o nounset
set -o pipefail
IFS=$'\n\t'

for drive in Swap Media OSX_10.11.6/$HOME
do
   pushd /Volumes/${drive}  &> /dev/null
   gfind . -depth -name 'DerivedData'|xargs -I '{}' /bin/rm -fR '{}'
   popd &> /dev/null
done
1