Macのnode_modulesとは。削除しても安全か
はい、node_modulesは削除しても安全です。入っているのはダウンロードされた依存関係だけで、プロジェクト内でパッケージマネージャのインストールコマンドを実行すれば作り直されます。
場所
<project>/node_modulesこれは何か
JavaScriptやTypeScriptのプロジェクトで npm install、yarn、pnpm install を実行すると、パッケージマネージャは package.json を読み取り、すべての依存関係と、さらにその依存関係の依存関係を、プロジェクト内のnode_modulesフォルダに入れます。
大きくなるのは、最近のプロジェクトが数百から数千のパッケージを取り込み、その一部にはコンパイル済みのバイナリが含まれるからです。プロジェクトごとに別々のコピーを持つため、プロジェクトが10個あればnode_modulesフォルダも10個あり、何年も開いていないプロジェクトのものも含まれます。
自分で書いたものは、node_modulesには一切ありません。大切なのは自分のコード、package.json、ロックファイルで、これらがあれば作り直すことができます。
どのくらい大きくなるか
プロジェクト1つあたり数百MBが一般的で、大きめのアプリやモノレポでは1 GBを超えます。
手動で消去する方法
- プロジェクトで実行中の開発サーバやビルドを停止します。
- ターミナルを開き、プロジェクトフォルダに移動します。
- 下記のコマンドを実行します。削除されるのは現在のフォルダにあるnode_modulesフォルダだけなので、先に pwd で現在の場所を確認してください。
- プロジェクトの作業を再開するときは、npm install、yarn install、pnpm install のいずれかを実行して復元します。
rm -rf node_modules削除したあとはどうなるか
依存関係をもう一度インストールするまで、プロジェクトは実行もビルドもできません。ロックファイルがあれば同じバージョンが戻り、パッケージマネージャのキャッシュがディスクに残っていれば再インストールは速く済みます。
Diskzyでの扱い
Diskzyは、node_modulesなどのプロジェクトのビルドフォルダを「Clean up」(クリーンアップ)タブで見つけます。プロジェクトが過去14日以内に変更されている場合、そのフォルダのチェックは外したままにします。
関連ガイド
Macの空き領域がどこに消えたのかを確認
Diskzyはディスク全体をマップにし、システムデータの内訳を示し、安全なものを消去します。72時間は無料、その後は$9の買い切りでMac 2台まで使えます。
Diskzyを無料で試す