Caches de développement sous Windows
Un projet a à peine grandi, et pourtant le lecteur C a gagné plusieurs Go. Trouver un dossier npm, pip ou Gradle n’est pas une raison de le supprimer en entier. Les caches de téléchargement, les dépendances de projet, les fichiers de compilation et les versions d’outils enregistrées ont des rôles différents, et la reconstruction dépend du fait que leurs sources restent disponibles.
Trouver l’emplacement que l’outil utilise vraiment
Dans un terminal où les outils concernés sont installés, ces commandes montrent l’emplacement du cache npm et les informations du cache pip sans supprimer de contenu :
npm config get cache
python -m pip cache info
La requête pip utilise l’environnement choisi par python. Si vous avez changé les emplacements de cache, suivez la sortie. La référence de configuration npm et la référence du cache pip décrivent les requêtes. Le chemin par défaut d’un PC n’est pas la configuration de chaque projet.
Distinguer quatre sortes de dossiers
| Type | Exemples | À vérifier avant le retrait |
|---|---|---|
| Caches de téléchargement de paquets | Cache npm, caches HTTP et wheels de pip | Si une installation ultérieure a besoin de téléchargements, surtout hors ligne |
| Dépendances de projet | node_modules, environnements virtuels, vendor |
Si les paquets, les fichiers de verrouillage, les sources et les étapes d’installation restent disponibles |
| Fichiers de compilation | dist, build, obj |
Si c’est du contenu généré et s’il contient quelque chose ajouté à la main |
| Versions d’outils et dépôts locaux | Versions Gradle téléchargées et certains paquets installés localement | Si la prochaine synchronisation ou compilation en a directement besoin |
Reconstruire a un coût. L’accès réseau, les sources disponibles, l’authentification et les besoins hors ligne comptent. Un dossier de dépendances n’est pas une cible de nettoyage universelle seulement parce que son nom est familier.
Un problème de cache est différent d’un problème de dépendances
Le cache de téléchargement de npm valide le contenu, et sa documentation décrit le retéléchargement de données corrompues. Une erreur d’installation n’est pas une raison suffisante de vider le cache. Un échec réseau, une version verrouillée indisponible ou un conflit de dépendances peut rester inchangé ensuite.
pip sépare les réponses HTTP en cache des wheels en cache, y compris des paquets installables déjà construits. Sa documentation du cache explique les deux. pip cache list liste des wheels plutôt que chaque fichier du dossier de cache. Les environnements virtuels isolent les dépendances installées, mais plusieurs environnements peuvent partager un cache pip. Choisir un autre python ne garantit pas un emplacement de cache séparé ; lisez la sortie de la requête.
Un fichier de verrouillage enregistre des versions, pas une sauvegarde de paquets
Considérez un projet hors ligne dont le package-lock.json est intact, mais dont node_modules et les caches de téléchargement ont été retirés. L’enregistrement des versions reste, mais les paquets nécessaires à l’installation peuvent être indisponibles. Un fichier de verrouillage contrôle le choix des versions ; il ne conserve pas les fichiers de paquets ni l’accès à un registre privé.
La documentation du cache de dépendances de Gradle explique pourquoi les builds hors ligne exigent les artefacts nécessaires en local. Son guide des dossiers et de la conservation sépare les caches propres à une version, les dépendances partagées et les distributions Wrapper. Avant de vider un gros dossier .gradle, identifiez quelle catégorie a grandi. D’anciennes entrées gérées par l’outil et des dépendances dont un projet actif a encore besoin méritent des décisions différentes.
Ce que Mole gère et ce qui reste à l’outil
Mole pour Windows liste les caches npm, pip et d’autres caches reconnus. Le contenu en cours d’utilisation reste protégé, et les éléments dont les données ne se régénèrent pas automatiquement attendent une revue. Il ne traite pas le dossier de dépendances de chaque projet comme un cache générique. Sélectionner un élément de nettoyage n’autorise pas à quitter chaque processus Node.js ou Python du PC.
Les caches et wrapper\dists de Gradle restent hors du périmètre de nettoyage de Mole. La synchronisation d’Android Studio et le prochain build peuvent en avoir besoin directement. Laissez Gradle gérer la conservation plutôt que de vider une version seulement pour la télécharger à nouveau.
Gérez les fichiers de projet selon les instructions de ce projet. Le tableau explique les rôles des dossiers ; il ne veut pas dire que Mole analyse et supprime automatiquement chaque chemin de projet listé. Les sources, la configuration, les sessions et les modèles locaux ne deviennent pas des caches seulement parce qu’ils se trouvent dans des dossiers de développement.
Vérifier ensuite avec le même projet
Gardez une copie indépendante de ce dont vous avez besoin, puis traitez les caches sélectionnés. Répétez l’installation ou le build d’origine du projet et notez les téléchargements nécessaires. Ne videz pas ensemble les dépendances, les versions d’outils et les caches de téléchargement juste avant une présentation ou un déplacement hors ligne.
Si des disques virtuels, des modèles ou de grosses sorties occupent la plupart du stockage, utilisez le guide des gros fichiers. Le guide des caches sépare les caches ordinaires des données personnelles.