開発者向けストレージガイド
プロジェクトの作業を失わずに古い node_modules を整理
node_modules ディレクトリは通常、信頼できる manifest とロックファイルから再現できますが、ローカルパッチ、未公開パッケージ、利用不能なレジストリがあると削除の負担が大きくなります。サイズとプロジェクトの経過時間から候補を探し、再現可能性を確認して、一度に一つのプロジェクトだけを処理してください。
macOS 標準機能でできること
Terminal で依存ツリーを探せますが、範囲の広い検索・削除コマンドは危険です。検出と削除を分けてください。
- 可能性の高いプロジェクトルートで node_modules ディレクトリを検索し、何も削除せずサイズを出力します。
- 各親プロジェクトを開き、パッケージ manifest、ロックファイル、リモートリポジトリ、現在の作業ツリー状態を確認します。
- 削除前に、ローカルパッチ、リンクされたパッケージ、生成済みアセット、未公開の依存関係を保護します。
- 確認済みのディレクトリを一つゴミ箱へ移し、プロジェクトで指定されたパッケージマネージャで再インストールして、検証コマンドを実行します。
Mint が役立つ場面
依存ツリーが古いプロジェクトに散在し、確認可能な一覧が必要な場合に Mint が役立ちます。
- 対応するプロジェクト場所で、古い node_modules とその他のパッケージマネージャ生成物をスキャンします。
- プロジェクトが本当に非アクティブか判断する前に、パス、サイズ、最終更新時期を比較します。
- 古い依存関係のクリーンアップルールを dry run し、実行前にすべての候補を確認します。
- 範囲を限定しない再帰削除を使わず、承認したディレクトリをゴミ箱へ移し、ジャーナルに処理記録を残します。
境界と安全確認
再インストール可能であることは、バックアップ済みであることと同じではありません。
- 正確なパッケージマネージャとロックファイルを確認してください。npm、pnpm、Yarn、Bun を混在させると、解決される依存ツリーが変わる場合があります。
- オフラインまたは廃止されたレジストリでは、古い依存関係を後から取得できない場合があります。
- 解決されていない glob や再帰削除コマンドで、広いホームディレクトリやワークスペースルートを対象にしないでください。
よくある質問
すべての node_modules フォルダを削除できますか?
いいえ。作業中のプロジェクトには依存関係が必要で、ローカル変更や現在はダウンロードできないパッケージを含むツリーもあります。一度に一つのプロジェクトを確認してください。
node_modules を削除するとソースコードも消えますか?
正確な node_modules パスを選択していれば消えませんが、誤った再帰コマンドでは削除される可能性があります。解決済みのパスを確認し、復元できるゴミ箱への移動を優先してください。
削除前に何を確認すべきですか?
manifest、ロックファイル、パッケージマネージャのバージョン、リポジトリ状態、ローカルパッチ、レジストリの利用可否、プロジェクトのインストール・テストコマンドを確認します。
古い依存ツリーを先に棚卸し
node_modules をスキャンし、親プロジェクトを確認してから処理してください。