パッケージマネージャはダウンロードしたものをローカルにキャッシュし、多くは自動で整理しません。数年分のプロジェクトで数十GBになることも珍しくありません。ただし、ほとんどは必要なものを再ダウンロードできるため、安全に削除できます。
開始前に: 実行中のビルド、インストール、開発サーバーを停止してください。ツールが使用中のキャッシュを削除すると、わかりにくいエラーが起きることがあります。
容量を使っている場所を確認
次の読み取り専用コマンドで、一般的なキャッシュフォルダのサイズを確認できます。
du -sh ~/Library/Caches/Homebrew ~/.npm ~/Library/pnpm ~/Library/Caches/pip ~/Library/Caches/uv ~/.gradle/caches ~/Library/Caches/CocoaPods ~/.pub-cache ~/.cargo/registry 2>/dev/null
存在しないフォルダはスキップされます。
Homebrew
Homebrewはダウンロードしたbottleと古いformulaのバージョンを保持します。次で整理します。
brew cleanup
古いものだけでなく、ダウンロードキャッシュをすべて削除するには:
brew cleanup --prune=all
まずbrew cleanup -nを実行すると、削除せずに対象を確認できます。
npm、Yarn、pnpm
npm cache clean --force
yarn cache clean
pnpm store prune
npm cache verifyはすべてを消さずにキャッシュを確認・整理します。pnpm store pruneはどのプロジェクトからも参照されないパッケージを削除し、プロジェクト間で共有するpnpmストアにも安全です。
古いnode_modulesフォルダ
JavaScriptプロジェクトにはそれぞれnode_modulesがあり、多くは数百MBになります。プロジェクトのフォルダ内で、削除せずに一覧を確認するには:
find ~/code -name node_modules -type d -prune -exec du -sh {} + 2>/dev/null
現在作業していないプロジェクトのnode_modulesを削除します。npm installで復元できます。
Python:pipとuv
pip cache purge
uv cache clean
uv cache pruneは未使用の項目だけを削除する穏やかな選択肢です。古いプロジェクトの仮想環境(.venv)も大きくなることがあり、requirementsファイルから再生成できます。
Gradle
依存関係キャッシュは~/.gradle/cachesにあります。実行中のデーモンを停止してから削除します。
./gradlew --stop
rm -rf ~/.gradle/caches
次のビルドで依存関係を再ダウンロードします。Android Studioでは設定 > Languages & Frameworks > Android SDKで古いSDKプラットフォームとシステムイメージ、Device Managerで古いエミュレータも削除できます。
CocoaPods
pod cache clean --all
ダウンロード済みpodを削除します。プロジェクトのPodsフォルダとPodfile.lockには影響しません。
DartとFlutter
dart pub cache clean
グローバルに有効化したツールも含め、pubキャッシュのすべてを削除します。ツールは再度有効化する必要があります。プロジェクト内のflutter pub getでパッケージを再取得し、flutter cleanでビルド出力を削除できます。
Rust(Cargo)
作業していないプロジェクトでcargo cleanを実行すると、Rustで特に大きくなりやすいtargetフォルダを削除できます。~/.cargo/registryのレジストリキャッシュも削除でき、再ダウンロードされます。
Docker
Docker Desktopはイメージ、コンテナ、ボリューム、ビルドキャッシュを1つのディスクイメージに保存します。Finderでファイルを削除しても、この容量は縮みません。
-
使用容量を確認します。
docker system df -
停止中のコンテナ、未使用ネットワーク、参照されないイメージ、ビルドキャッシュを削除します。
docker system prune-aを追加すると、コンテナが使っていないすべてのイメージも削除します。確信がない限り**--volumesを追加しないでください**。ボリュームにはローカルデータベースなどの永続データがあります。 -
Docker Desktop > Settings > Resourcesで、ディスクイメージのサイズを確認し、上限を設定できます。
Xcode
DerivedData、アーカイブ、デバイスサポートファイル、シミュレータは、Xcodeストレージの整理で詳しく説明しています。
よくある質問
npmキャッシュを削除しても安全ですか?
はい。必要に応じてnpmがパッケージを再ダウンロードします。まず実行中のインストールを停止してください。プロジェクトとnode_modulesには影響しません。
docker system pruneはデータを削除しますか?
標準では停止中のコンテナ、未使用ネットワーク、参照されないイメージ、ビルドキャッシュを削除しますが、ボリュームは削除しません。データベースなどを持つボリュームは--volumesを追加した場合にのみ削除されます。
~/.gradle/cachesを削除できますか?
はい。Gradleデーモンを停止してから削除してください。次のビルドで依存関係を再ダウンロードするため、時間と通信量がかかります。