01La règle avant tout nettoyage
Un dossier comme node_modules ou target se recrée, à condition d’être un vrai produit de l’outil et non un dossier où vous avez travaillé. Vérifiez qu’il est ignoré par Git et que votre travail est enregistré :
git check-ignore -v node_modulesgit status --shortSi git check-ignore ne répond rien, le dossier n’est pas ignoré : ne le supprimez pas sans regarder ce qu’il contient.
02JavaScript : node_modules, npm, pnpm, Yarn
Pour repérer les node_modules les plus lourds dans un dossier de projets :
find ~/Projets -name node_modules -type d -prune -exec du -sh {} +Supprimez ceux des projets inactifs ; un npm install (ou pnpm install) les recrée. Les caches globaux se vident avec :
npm cache clean --forcepnpm store pruneyarn cache clean03Rust, Python, Java
- Rust : le dossier
targetd’un projet dépasse vite plusieurs Go.cargo cleanle supprime, la prochaine compilation le recrée. - Python : un environnement virtuel (
.venv) se recrée depuisrequirements.txtoupyproject.toml; le cache de pip se vide avecpip cache purge. - Java et Android :
~/.gradle/cacheset~/.m2/repositoryse retéléchargent à la prochaine compilation, au prix d’un premier build plus long.
04Xcode et les simulateurs
~/Library/Developer/Xcode/DerivedData contient les compilations intermédiaires : supprimez son contenu Xcode fermé, il se recrée à la prochaine compilation. Les simulateurs d’anciennes versions d’iOS et les symboles d’appareils sont souvent les plus gros :
xcrun simctl delete unavailableLes dossiers de ~/Library/Developer/Xcode/iOS DeviceSupport correspondant à des versions d’iOS que vous n’utilisez plus peuvent aussi partir ; ils se recréent au branchement d’un appareil.
05Docker
Commencez par voir ce qui occupe la place, puis nettoyez par étapes :
docker system dfdocker image prunedocker builder prunedocker image prune supprime les images sans nom ni conteneur, docker builder prune le cache de construction. Évitez docker system prune -a --volumes sans réfléchir : --volumes efface aussi les données de vos bases de données locales.