VSCode検索除外の完全ガイド|ファイル・フォルダを検索対象から外す方法

スポンサーリンク
  1. VSCode検索除外の完全ガイド|ファイル・フォルダを検索対象から外す方法
  2. VSCodeの検索で特定のファイルを除外したい!
  3. VSCodeの検索除外の種類
    1. ①一時的な除外(検索画面で指定)
    2. ②恒久的な除外(search.exclude)
    3. ③.gitignoreの利用
  4. 【方法①】検索画面で一時的に除外する
    1. 基本的な手順
    2. 具体的な入力例
    3. 除外設定のオン・オフ
  5. 【方法②】settings.jsonで恒久的に除外する
    1. search.excludeの設定(GUIから)
    2. settings.jsonで直接編集
    3. ユーザー設定 vs ワークスペース設定
  6. 【方法③】.gitignoreを利用する
    1. .gitignoreの自動利用
    2. .gitignoreの書き方
    3. .gitignoreがない場合
    4. その他の無視ファイル
  7. Globパターンの書き方
    1. 基本的なパターン
    2. 実践的なパターン例
  8. ファイルの表示除外(files.exclude)
    1. files.excludeの設定
    2. search.excludeとの違い
    3. 継承を無効化
  9. よくある設定パターン
    1. Node.jsプロジェクト
    2. Pythonプロジェクト
    3. Webフロントエンド
    4. Java/Mavenプロジェクト
    5. .NETプロジェクト
    6. Docker/コンテナプロジェクト
  10. 検索除外のトラブルシューティング
    1. 問題①除外設定が反映されない
    2. 問題②検索したいファイルが見つからない
    3. 問題③検索が遅い
    4. 問題④設定が他のメンバーと共有されない
  11. 検索除外の応用テクニック
    1. テクニック①プロジェクトごとに設定を切り替え
    2. テクニック②一時的に除外を無効化
    3. テクニック③正規表現と組み合わせ
    4. テクニック④複数のワークスペースで設定を共有
  12. よくある質問
  13. まとめ|VSCode検索除外の完全ガイド
  14. VSCodeの検索除外の種類
    1. ①一時的な除外(検索画面で指定)
    2. ②恒久的な除外(search.exclude)
    3. ③.gitignoreの利用
  15. 【方法①】検索画面で一時的に除外する
    1. 基本的な手順
    2. 具体的な入力例
    3. 除外設定のオン・オフ
  16. 【方法②】settings.jsonで恒久的に除外する
    1. search.excludeの設定(GUIから)
    2. settings.jsonで直接編集
    3. ユーザー設定 vs ワークスペース設定
  17. 【方法③】.gitignoreを利用する
    1. .gitignoreの自動利用
    2. .gitignoreの書き方
    3. .gitignoreがない場合
    4. その他の無視ファイル
  18. Globパターンの書き方
    1. 基本的なパターン
    2. 実践的なパターン例
  19. ファイルの表示除外(files.exclude)
    1. files.excludeの設定
    2. search.excludeとの違い
    3. 継承を無効化
  20. よくある設定パターン
    1. Node.jsプロジェクト
    2. Pythonプロジェクト
    3. Webフロントエンド
    4. Java/Mavenプロジェクト
    5. .NETプロジェクト
    6. Docker/コンテナプロジェクト
  21. 検索除外のトラブルシューティング
    1. 問題①除外設定が反映されない
    2. 問題②検索したいファイルが見つからない
    3. 問題③検索が遅い
    4. 問題④設定が他のメンバーと共有されない
  22. 検索除外の応用テクニック
    1. テクニック①プロジェクトごとに設定を切り替え
    2. テクニック②一時的に除外を無効化
    3. テクニック③正規表現と組み合わせ
    4. テクニック④複数のワークスペースで設定を共有
  23. よくある質問
  24. まとめ|VSCode検索除外の完全ガイド

VSCode検索除外の完全ガイド|ファイル・フォルダを検索対象から外す方法

VSCodeの検索で特定のファイルを除外したい!

VSCode(Visual Studio Code)でプロジェクト全体を検索すると、不要なファイルまでヒットして結果が見づらくなることはありませんか?

「node_modulesの中身は検索したくない」「ビルドファイルやログファイルは除外したい」など、特定のファイルやフォルダを検索対象から外したい場面は多いですよね。

実は、VSCodeには検索除外の機能がしっかり用意されています。一時的な除外から恒久的な設定まで、状況に応じて柔軟に対応できます。

この記事では、VSCodeで検索時にファイルやフォルダを除外する方法を、初心者の方にもわかりやすく解説します。

VSCodeの検索除外の種類

VSCodeには3つの検索除外方法があります。

①一時的な除外(検索画面で指定)

検索するたびに、その場で除外ファイルを指定する方法です。

メリット

  • 設定不要で手軽
  • その時だけ特定のファイルを除外できる

デメリット

  • 毎回指定する必要がある

②恒久的な除外(search.exclude)

設定ファイルに記述して、常に特定のファイルを検索対象から除外する方法です。

メリット

  • 一度設定すれば、常に除外される
  • プロジェクトごとに設定できる

デメリット

  • 設定ファイルの編集が必要

③.gitignoreの利用

.gitignoreに記載されたファイルを自動的に除外する方法です。

メリット

  • Git管理と連動して自動的に除外
  • 追加設定不要

デメリット

  • Gitを使っていない場合は使えない

【方法①】検索画面で一時的に除外する

最も手軽な方法から見ていきましょう。

基本的な手順

1. 検索画面を開く

ショートカットキー:

  • Windows/Linux: Ctrl + Shift + F
  • Mac: Cmd + Shift + F

2. 詳細検索オプションを表示

検索ボックスの右下にある「(その他のオプション)」をクリック

または検索ボックス下の「」マークをクリック

3. 除外するファイルを指定

除外するファイル」の入力欄に、除外したいファイルやフォルダのパターンを入力

具体的な入力例

node_modulesフォルダを除外

**/node_modules/**

複数のフォルダを除外

**/node_modules/**, **/dist/**, **/*.log

カンマ(,)で区切って複数指定できます。

特定の拡張子を除外

**/*.min.js, **/*.map

除外設定のオン・オフ

「除外するファイル」の右にあるスイッチアイコンをクリックすると、設定の有効/無効を切り替えられます。

注意点
この方法で設定した除外パターンは、VSCodeを閉じると保存されません。次回検索時には再度入力する必要があります。

【方法②】settings.jsonで恒久的に除外する

プロジェクトで常に除外したいファイルがある場合、設定ファイルに記述する方法が便利です。

search.excludeの設定(GUIから)

手順

  1. 設定画面を開く
  • Windows/Linux: Ctrl + ,
  • Mac: Cmd + ,
  1. 検索ボックスに「search.exclude」と入力
  2. パターンを追加」をクリック
  3. 除外したいファイルのパターンを入力
  • 例: **/node_modules/**
  1. OK」をクリック

settings.jsonで直接編集

より柔軟な設定をしたい場合は、JSONファイルを直接編集します。

手順

  1. 設定画面を開く
  2. 右上の「設定(JSON)を開く」アイコン(ファイルアイコン)をクリック
  3. settings.jsonが開く
  4. 以下のように記述

基本的な書き方

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/*.log": true
  }
}

より実践的な例

{
  "search.exclude": {
    // Node.js関連
    "**/node_modules/**": true,
    "**/package-lock.json": true,

    // ビルド成果物
    "**/dist/**": true,
    "**/build/**": true,
    "**/*.min.js": true,
    "**/*.min.css": true,

    // ソースマップ
    "**/*.map": true,

    // ログファイル
    "**/*.log": true,

    // データベースファイル
    "**/*.sqlite": true,
    "**/*.db": true,

    // IDE設定
    "**/.vscode/**": true,
    "**/.idea/**": true
  }
}

ユーザー設定 vs ワークスペース設定

ユーザー設定(User Settings)

すべてのプロジェクトで適用されます。

  • 場所: ユーザーのホームディレクトリ
  • 開き方: 設定画面で「ユーザー」タブを選択

ワークスペース設定(Workspace Settings)

現在のプロジェクトのみで適用されます。

  • 場所: プロジェクトの.vscode/settings.json
  • 開き方: 設定画面で「ワークスペース」タブを選択

推奨
プロジェクト固有の除外設定は、ワークスペース設定に書くのがおすすめです。

【方法③】.gitignoreを利用する

Gitを使っている場合、最も効率的な方法です。

.gitignoreの自動利用

VSCodeはデフォルトで、.gitignoreに記載されたファイルを検索対象から除外します。

有効化の確認

  1. 設定画面で「search.useIgnoreFiles」を検索
  2. チェックが入っていることを確認

settings.jsonでの確認

{
  "search.useIgnoreFiles": true
}

この設定がtrue(デフォルト)であれば、.gitignoreのファイルが自動的に除外されます。

.gitignoreの書き方

例:.gitignore

# 依存関係
node_modules/
vendor/

# ビルド成果物
dist/
build/
*.min.js
*.min.css

# ログ
*.log
logs/

# 環境設定
.env
.env.local

# エディタ設定
.vscode/
.idea/

# OS固有
.DS_Store
Thumbs.db

.gitignoreがない場合

.gitignoreファイルがプロジェクトにない場合は、手動で作成できます。

手順

  1. プロジェクトのルートディレクトリに.gitignoreファイルを作成
  2. 除外したいファイルのパターンを記述
  3. 保存

その他の無視ファイル

VSCodeは.gitignore以外にも、以下のファイルを参照できます:

  • .ignore: 汎用的な無視ファイル
  • .npmignore: npm用
  • .dockerignore: Docker用

これらもsearch.useIgnoreFilestrueであれば自動的に適用されます。

Globパターンの書き方

検索除外では「Glob(グロブ)パターン」という記法を使います。

基本的なパターン

*(アスタリスク)

0文字以上の任意の文字にマッチ

*.js       → すべてのJavaScriptファイル
test*      → testで始まるファイル
*_backup   → _backupで終わるファイル

**(ダブルアスタリスク)

任意の階層のディレクトリにマッチ

**/node_modules/**  → どの階層のnode_modulesフォルダ内のすべて
**/dist/**          → どの階層のdistフォルダ内のすべて
**/*.log            → すべての階層の.logファイル

?(クエスチョン)

任意の1文字にマッチ

test?.js   → test1.js, testA.js などにマッチ
file-?.txt → file-1.txt, file-a.txt などにマッチ

[](角括弧)

範囲内の1文字にマッチ

file[0-9].txt    → file0.txt〜file9.txtにマッチ
test[abc].js     → testa.js, testb.js, testc.jsにマッチ

{}(波括弧)

複数のパターンのいずれかにマッチ

*.{js,ts}              → .jsまたは.tsファイル
{src,test}/**/*.js     → srcまたはtestフォルダ内のすべての.jsファイル

実践的なパターン例

特定のフォルダ全体を除外

**/node_modules/**
**/dist/**
**/build/**
**/.git/**

特定の拡張子を除外

**/*.min.js
**/*.map
**/*.log
**/*.bak

特定のファイル名を除外

**/package-lock.json
**/.DS_Store
**/Thumbs.db

複数の条件を組み合わせ

{**/dist/**,**/build/**,**/*.min.js}

ファイルの表示除外(files.exclude)

検索だけでなく、エクスプローラー(ファイルツリー)からも除外したい場合があります。

files.excludeの設定

settings.json

{
  "files.exclude": {
    "**/.git": true,
    "**/.svn": true,
    "**/.DS_Store": true,
    "**/Thumbs.db": true,
    "**/node_modules": true,
    "**/dist": true
  }
}

search.excludeとの違い

設定影響範囲
files.excludeエクスプローラー表示 + 検索
search.exclude検索のみ

重要な注意点

search.excludeは、デフォルトでfiles.excludeの設定を継承します。

つまり、files.excludeで除外したファイルは、自動的に検索からも除外されます。

継承を無効化

files.excludeの設定を検索に適用したくない場合:

{
  "search.exclude": {},
  "search.useIgnoreFiles": false
}

よくある設定パターン

実際によく使われる設定例を紹介します。

Node.jsプロジェクト

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/package-lock.json": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/*.min.js": true,
    "**/*.map": true
  }
}

Pythonプロジェクト

{
  "search.exclude": {
    "**/__pycache__/**": true,
    "**/*.pyc": true,
    "**/.pytest_cache/**": true,
    "**/venv/**": true,
    "**/.venv/**": true,
    "**/env/**": true
  }
}

Webフロントエンド

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/.next/**": true,
    "**/*.min.js": true,
    "**/*.min.css": true,
    "**/*.map": true,
    "**/coverage/**": true
  }
}

Java/Mavenプロジェクト

{
  "search.exclude": {
    "**/target/**": true,
    "**/.classpath": true,
    "**/.project": true,
    "**/.settings/**": true,
    "**/*.class": true
  }
}

.NETプロジェクト

{
  "search.exclude": {
    "**/bin/**": true,
    "**/obj/**": true,
    "**/.vs/**": true,
    "**/*.dll": true,
    "**/*.pdb": true
  }
}

Docker/コンテナプロジェクト

{
  "search.exclude": {
    "**/.docker/**": true,
    "**/volumes/**": true,
    "**/*.log": true
  }
}

検索除外のトラブルシューティング

問題①除外設定が反映されない

原因と解決方法

1. 除外設定のスイッチがOFFになっている

検索画面の「除外するファイル」右のスイッチを確認してONにしてください。

2. Globパターンが間違っている

  • node_modules/** ではなく **/node_modules/**
  • パスの区切りは/(スラッシュ)を使う

3. 設定の優先順位

検索画面で直接指定した除外パターンは、search.excludeより優先されます。

4. VSCodeの再起動

設定ファイルを変更した後、VSCodeを再起動してみてください。

問題②検索したいファイルが見つからない

原因

意図せず除外されている可能性があります。

確認方法

  1. 検索画面で「除外するファイル」のスイッチをOFFにする
  2. 検索結果が表示されるか確認

解決方法

  • search.excludeの設定を見直す
  • .gitignoreを確認
  • files.excludeの設定を確認

問題③検索が遅い

原因

除外設定が不十分で、大量のファイルを検索している可能性があります。

解決方法

以下を除外設定に追加:

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/.git/**": true,
    "**/*.log": true
  }
}

問題④設定が他のメンバーと共有されない

原因

ユーザー設定に書いている

解決方法

ワークスペース設定(.vscode/settings.json)に記述して、Gitにコミットしてください。

# .vscode/settings.jsonをGitに追加
git add .vscode/settings.json
git commit -m "Add VSCode search exclude settings"

検索除外の応用テクニック

テクニック①プロジェクトごとに設定を切り替え

.vscode/settings.json(ワークスペース設定)を使えば、プロジェクトごとに異なる除外設定ができます。

手順

  1. プロジェクトのルートに.vscodeフォルダを作成
  2. その中にsettings.jsonを作成
  3. プロジェクト固有の除外設定を記述

テクニック②一時的に除外を無効化

すべての除外設定を一時的に無効にしたい場合:

検索画面で「除外するファイル」のスイッチをOFFにするだけです。

テクニック③正規表現と組み合わせ

検索で正規表現を使う場合も、除外設定は有効です。

  1. 検索欄の右にある「.(正規表現を使用)**」アイコンをクリック
  2. 正規表現で検索
  3. 除外設定も同時に適用される

テクニック④複数のワークスペースで設定を共有

複数のプロジェクトで同じ除外設定を使いたい場合:

方法①ユーザー設定に書く

すべてのプロジェクトで適用されます。

方法②設定ファイルをコピー

.vscode/settings.jsonを他のプロジェクトにコピーします。

よくある質問

Q. search.excludeとfiles.excludeはどう使い分けますか?

A. files.excludeはエクスプローラーからも非表示にしたいファイル(.git.DS_Storeなど)、search.excludeは検索だけから除外したいファイル(node_modulesdistなど)に使い分けます。

Q. 除外設定はチーム全体で共有すべきですか?

A. プロジェクト固有の除外設定(node_modules、distなど)は.vscode/settings.jsonに書いてGitで共有するのがおすすめです。個人的な設定はユーザー設定に書きます。

Q. .gitignoreと.vscode/settings.jsonのどちらに書くべきですか?

A. Gitで管理したくないファイルは.gitignoreに、検索だけから除外したいファイルは.vscode/settings.jsonsearch.excludeに書きます。

Q. 除外設定を一時的に無効にする方法は?

A. 検索画面の「除外するファイル」右にあるスイッチをOFFにすれば、一時的にすべての除外設定を無効化できます。

Q. 特定のフォルダだけを検索対象にする方法は?

A. 検索画面の「含めるファイル」欄に、検索したいフォルダのパターン(例:./src/**)を入力してください。

Q. 除外設定の優先順位は?

A. 検索画面で直接指定 > ワークスペース設定 > ユーザー設定 の順で優先されます。

Q. VSCodeを再起動しないと設定が反映されませんか?

A. 通常は再起動不要ですが、設定が反映されない場合は一度再起動してみてください。

Q. 除外パターンで正規表現は使えますか?

A. いいえ、除外パターンはGlobパターンのみで、正規表現は使えません。

Q. ファイル名の大文字小文字は区別されますか?

A. OSに依存します。Windows/Macでは通常区別されませんが、Linuxでは区別されます。

Q. node_modulesを除外したのに検索結果に表示されます

A. **/node_modules/**のようにパスの前後に**//**を付けてください。また、除外設定のスイッチがONになっているか確認してください。

まとめ|VSCode検索除外の完全ガイド

VSCodeで検索時にファイルやフォルダを除外する方法について解説してきました。最後に重要なポイントをおさらいしましょう。

3つの除外方法

方法設定箇所適用範囲推奨用途
一時的な除外検索画面その検索のみ一時的な除外
search.excludesettings.jsonプロジェクト/全体恒久的な除外
.gitignore.gitignoreファイルGitプロジェクトGit管理外ファイル

基本的な設定方法

GUI(設定画面)から

  1. Ctrl/Cmd + ,で設定を開く
  2. 「search.exclude」で検索
  3. パターンを追加

JSONファイルから

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/*.log": true
  }
}

よく使うGlobパターン

*                   → 任意の文字列
**                  → 任意の階層
?                   → 任意の1文字
[]                  → 範囲指定
{}                  → いずれかにマッチ

**/node_modules/**  → すべてのnode_modulesフォルダ
**/*.min.js         → すべての.min.jsファイル
**/dist/**          → すべてのdistフォルダ

推奨設定(Node.jsプロジェクト)

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/package-lock.json": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/*.min.js": true,
    "**/*.min.css": true,
    "**/*.map": true,
    "**/*.log": true
  },
  "search.useIgnoreFiles": true
}

設定の保存場所

  • ユーザー設定: すべてのプロジェクトで適用
  • ワークスペース設定: 現在のプロジェクトのみ(.vscode/settings.json)

トラブルシューティングチェックリスト

  • ☐ 除外設定のスイッチがONになっているか
  • ☐ Globパターンが正しいか(**/を忘れていないか)
  • .gitignoreが正しく設定されているか
  • search.useIgnoreFilestrueになっているか
  • ☐ VSCodeを再起動してみたか

効率的な検索のための除外対象

以下は必ず除外設定に追加しましょう:

  • 依存関係フォルダ(node_modulesvendorなど)
  • ビルド成果物フォルダ(distbuildなど)
  • ログファイル(*.log)
  • ミニファイ済みファイル(*.min.js*.min.css)
  • ソースマップ(*.map)
  • Git管理フォルダ(.git)

VSCodeの検索除外機能を活用すれば、検索結果が見やすくなり、検索速度も向上します。プロジェクトに合わせて適切な除外設定をして、快適な開発環境を整えましょう!VSCodeの検索で特定のファイルを除外したい!

VSCode(Visual Studio Code)でプロジェクト全体を検索すると、不要なファイルまでヒットして結果が見づらくなることはありませんか?

「node_modulesの中身は検索したくない」「ビルドファイルやログファイルは除外したい」など、特定のファイルやフォルダを検索対象から外したい場面は多いですよね。

実は、VSCodeには検索除外の機能がしっかり用意されています。一時的な除外から恒久的な設定まで、状況に応じて柔軟に対応できます。

この記事では、VSCodeで検索時にファイルやフォルダを除外する方法を、初心者の方にもわかりやすく解説します。

VSCodeの検索除外の種類

VSCodeには3つの検索除外方法があります。

①一時的な除外(検索画面で指定)

検索するたびに、その場で除外ファイルを指定する方法です。

メリット

  • 設定不要で手軽
  • その時だけ特定のファイルを除外できる

デメリット

  • 毎回指定する必要がある

②恒久的な除外(search.exclude)

設定ファイルに記述して、常に特定のファイルを検索対象から除外する方法です。

メリット

  • 一度設定すれば、常に除外される
  • プロジェクトごとに設定できる

デメリット

  • 設定ファイルの編集が必要

③.gitignoreの利用

.gitignoreに記載されたファイルを自動的に除外する方法です。

メリット

  • Git管理と連動して自動的に除外
  • 追加設定不要

デメリット

  • Gitを使っていない場合は使えない

【方法①】検索画面で一時的に除外する

最も手軽な方法から見ていきましょう。

基本的な手順

1. 検索画面を開く

ショートカットキー:

  • Windows/Linux: Ctrl + Shift + F
  • Mac: Cmd + Shift + F

2. 詳細検索オプションを表示

検索ボックスの右下にある「(その他のオプション)」をクリック

または検索ボックス下の「」マークをクリック

3. 除外するファイルを指定

除外するファイル」の入力欄に、除外したいファイルやフォルダのパターンを入力

具体的な入力例

node_modulesフォルダを除外

**/node_modules/**

複数のフォルダを除外

**/node_modules/**, **/dist/**, **/*.log

カンマ(,)で区切って複数指定できます。

特定の拡張子を除外

**/*.min.js, **/*.map

除外設定のオン・オフ

「除外するファイル」の右にあるスイッチアイコンをクリックすると、設定の有効/無効を切り替えられます。

注意点
この方法で設定した除外パターンは、VSCodeを閉じると保存されません。次回検索時には再度入力する必要があります。

【方法②】settings.jsonで恒久的に除外する

プロジェクトで常に除外したいファイルがある場合、設定ファイルに記述する方法が便利です。

search.excludeの設定(GUIから)

手順

  1. 設定画面を開く
  • Windows/Linux: Ctrl + ,
  • Mac: Cmd + ,
  1. 検索ボックスに「search.exclude」と入力
  2. パターンを追加」をクリック
  3. 除外したいファイルのパターンを入力
  • 例: **/node_modules/**
  1. OK」をクリック

settings.jsonで直接編集

より柔軟な設定をしたい場合は、JSONファイルを直接編集します。

手順

  1. 設定画面を開く
  2. 右上の「設定(JSON)を開く」アイコン(ファイルアイコン)をクリック
  3. settings.jsonが開く
  4. 以下のように記述

基本的な書き方

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/*.log": true
  }
}

より実践的な例

{
  "search.exclude": {
    // Node.js関連
    "**/node_modules/**": true,
    "**/package-lock.json": true,

    // ビルド成果物
    "**/dist/**": true,
    "**/build/**": true,
    "**/*.min.js": true,
    "**/*.min.css": true,

    // ソースマップ
    "**/*.map": true,

    // ログファイル
    "**/*.log": true,

    // データベースファイル
    "**/*.sqlite": true,
    "**/*.db": true,

    // IDE設定
    "**/.vscode/**": true,
    "**/.idea/**": true
  }
}

ユーザー設定 vs ワークスペース設定

ユーザー設定(User Settings)

すべてのプロジェクトで適用されます。

  • 場所: ユーザーのホームディレクトリ
  • 開き方: 設定画面で「ユーザー」タブを選択

ワークスペース設定(Workspace Settings)

現在のプロジェクトのみで適用されます。

  • 場所: プロジェクトの.vscode/settings.json
  • 開き方: 設定画面で「ワークスペース」タブを選択

推奨
プロジェクト固有の除外設定は、ワークスペース設定に書くのがおすすめです。

【方法③】.gitignoreを利用する

Gitを使っている場合、最も効率的な方法です。

.gitignoreの自動利用

VSCodeはデフォルトで、.gitignoreに記載されたファイルを検索対象から除外します。

有効化の確認

  1. 設定画面で「search.useIgnoreFiles」を検索
  2. チェックが入っていることを確認

settings.jsonでの確認

{
  "search.useIgnoreFiles": true
}

この設定がtrue(デフォルト)であれば、.gitignoreのファイルが自動的に除外されます。

.gitignoreの書き方

例:.gitignore

# 依存関係
node_modules/
vendor/

# ビルド成果物
dist/
build/
*.min.js
*.min.css

# ログ
*.log
logs/

# 環境設定
.env
.env.local

# エディタ設定
.vscode/
.idea/

# OS固有
.DS_Store
Thumbs.db

.gitignoreがない場合

.gitignoreファイルがプロジェクトにない場合は、手動で作成できます。

手順

  1. プロジェクトのルートディレクトリに.gitignoreファイルを作成
  2. 除外したいファイルのパターンを記述
  3. 保存

その他の無視ファイル

VSCodeは.gitignore以外にも、以下のファイルを参照できます:

  • .ignore: 汎用的な無視ファイル
  • .npmignore: npm用
  • .dockerignore: Docker用

これらもsearch.useIgnoreFilestrueであれば自動的に適用されます。

Globパターンの書き方

検索除外では「Glob(グロブ)パターン」という記法を使います。

基本的なパターン

*(アスタリスク)

0文字以上の任意の文字にマッチ

*.js       → すべてのJavaScriptファイル
test*      → testで始まるファイル
*_backup   → _backupで終わるファイル

**(ダブルアスタリスク)

任意の階層のディレクトリにマッチ

**/node_modules/**  → どの階層のnode_modulesフォルダ内のすべて
**/dist/**          → どの階層のdistフォルダ内のすべて
**/*.log            → すべての階層の.logファイル

?(クエスチョン)

任意の1文字にマッチ

test?.js   → test1.js, testA.js などにマッチ
file-?.txt → file-1.txt, file-a.txt などにマッチ

[](角括弧)

範囲内の1文字にマッチ

file[0-9].txt    → file0.txt〜file9.txtにマッチ
test[abc].js     → testa.js, testb.js, testc.jsにマッチ

{}(波括弧)

複数のパターンのいずれかにマッチ

*.{js,ts}              → .jsまたは.tsファイル
{src,test}/**/*.js     → srcまたはtestフォルダ内のすべての.jsファイル

実践的なパターン例

特定のフォルダ全体を除外

**/node_modules/**
**/dist/**
**/build/**
**/.git/**

特定の拡張子を除外

**/*.min.js
**/*.map
**/*.log
**/*.bak

特定のファイル名を除外

**/package-lock.json
**/.DS_Store
**/Thumbs.db

複数の条件を組み合わせ

{**/dist/**,**/build/**,**/*.min.js}

ファイルの表示除外(files.exclude)

検索だけでなく、エクスプローラー(ファイルツリー)からも除外したい場合があります。

files.excludeの設定

settings.json

{
  "files.exclude": {
    "**/.git": true,
    "**/.svn": true,
    "**/.DS_Store": true,
    "**/Thumbs.db": true,
    "**/node_modules": true,
    "**/dist": true
  }
}

search.excludeとの違い

設定影響範囲
files.excludeエクスプローラー表示 + 検索
search.exclude検索のみ

重要な注意点

search.excludeは、デフォルトでfiles.excludeの設定を継承します。

つまり、files.excludeで除外したファイルは、自動的に検索からも除外されます。

継承を無効化

files.excludeの設定を検索に適用したくない場合:

{
  "search.exclude": {},
  "search.useIgnoreFiles": false
}

よくある設定パターン

実際によく使われる設定例を紹介します。

Node.jsプロジェクト

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/package-lock.json": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/*.min.js": true,
    "**/*.map": true
  }
}

Pythonプロジェクト

{
  "search.exclude": {
    "**/__pycache__/**": true,
    "**/*.pyc": true,
    "**/.pytest_cache/**": true,
    "**/venv/**": true,
    "**/.venv/**": true,
    "**/env/**": true
  }
}

Webフロントエンド

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/.next/**": true,
    "**/*.min.js": true,
    "**/*.min.css": true,
    "**/*.map": true,
    "**/coverage/**": true
  }
}

Java/Mavenプロジェクト

{
  "search.exclude": {
    "**/target/**": true,
    "**/.classpath": true,
    "**/.project": true,
    "**/.settings/**": true,
    "**/*.class": true
  }
}

.NETプロジェクト

{
  "search.exclude": {
    "**/bin/**": true,
    "**/obj/**": true,
    "**/.vs/**": true,
    "**/*.dll": true,
    "**/*.pdb": true
  }
}

Docker/コンテナプロジェクト

{
  "search.exclude": {
    "**/.docker/**": true,
    "**/volumes/**": true,
    "**/*.log": true
  }
}

検索除外のトラブルシューティング

問題①除外設定が反映されない

原因と解決方法

1. 除外設定のスイッチがOFFになっている

検索画面の「除外するファイル」右のスイッチを確認してONにしてください。

2. Globパターンが間違っている

  • node_modules/** ではなく **/node_modules/**
  • パスの区切りは/(スラッシュ)を使う

3. 設定の優先順位

検索画面で直接指定した除外パターンは、search.excludeより優先されます。

4. VSCodeの再起動

設定ファイルを変更した後、VSCodeを再起動してみてください。

問題②検索したいファイルが見つからない

原因

意図せず除外されている可能性があります。

確認方法

  1. 検索画面で「除外するファイル」のスイッチをOFFにする
  2. 検索結果が表示されるか確認

解決方法

  • search.excludeの設定を見直す
  • .gitignoreを確認
  • files.excludeの設定を確認

問題③検索が遅い

原因

除外設定が不十分で、大量のファイルを検索している可能性があります。

解決方法

以下を除外設定に追加:

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/.git/**": true,
    "**/*.log": true
  }
}

問題④設定が他のメンバーと共有されない

原因

ユーザー設定に書いている

解決方法

ワークスペース設定(.vscode/settings.json)に記述して、Gitにコミットしてください。

# .vscode/settings.jsonをGitに追加
git add .vscode/settings.json
git commit -m "Add VSCode search exclude settings"

検索除外の応用テクニック

テクニック①プロジェクトごとに設定を切り替え

.vscode/settings.json(ワークスペース設定)を使えば、プロジェクトごとに異なる除外設定ができます。

手順

  1. プロジェクトのルートに.vscodeフォルダを作成
  2. その中にsettings.jsonを作成
  3. プロジェクト固有の除外設定を記述

テクニック②一時的に除外を無効化

すべての除外設定を一時的に無効にしたい場合:

検索画面で「除外するファイル」のスイッチをOFFにするだけです。

テクニック③正規表現と組み合わせ

検索で正規表現を使う場合も、除外設定は有効です。

  1. 検索欄の右にある「.(正規表現を使用)**」アイコンをクリック
  2. 正規表現で検索
  3. 除外設定も同時に適用される

テクニック④複数のワークスペースで設定を共有

複数のプロジェクトで同じ除外設定を使いたい場合:

方法①ユーザー設定に書く

すべてのプロジェクトで適用されます。

方法②設定ファイルをコピー

.vscode/settings.jsonを他のプロジェクトにコピーします。

よくある質問

Q. search.excludeとfiles.excludeはどう使い分けますか?

A. files.excludeはエクスプローラーからも非表示にしたいファイル(.git.DS_Storeなど)、search.excludeは検索だけから除外したいファイル(node_modulesdistなど)に使い分けます。

Q. 除外設定はチーム全体で共有すべきですか?

A. プロジェクト固有の除外設定(node_modules、distなど)は.vscode/settings.jsonに書いてGitで共有するのがおすすめです。個人的な設定はユーザー設定に書きます。

Q. .gitignoreと.vscode/settings.jsonのどちらに書くべきですか?

A. Gitで管理したくないファイルは.gitignoreに、検索だけから除外したいファイルは.vscode/settings.jsonsearch.excludeに書きます。

Q. 除外設定を一時的に無効にする方法は?

A. 検索画面の「除外するファイル」右にあるスイッチをOFFにすれば、一時的にすべての除外設定を無効化できます。

Q. 特定のフォルダだけを検索対象にする方法は?

A. 検索画面の「含めるファイル」欄に、検索したいフォルダのパターン(例:./src/**)を入力してください。

Q. 除外設定の優先順位は?

A. 検索画面で直接指定 > ワークスペース設定 > ユーザー設定 の順で優先されます。

Q. VSCodeを再起動しないと設定が反映されませんか?

A. 通常は再起動不要ですが、設定が反映されない場合は一度再起動してみてください。

Q. 除外パターンで正規表現は使えますか?

A. いいえ、除外パターンはGlobパターンのみで、正規表現は使えません。

Q. ファイル名の大文字小文字は区別されますか?

A. OSに依存します。Windows/Macでは通常区別されませんが、Linuxでは区別されます。

Q. node_modulesを除外したのに検索結果に表示されます

A. **/node_modules/**のようにパスの前後に**//**を付けてください。また、除外設定のスイッチがONになっているか確認してください。

まとめ|VSCode検索除外の完全ガイド

VSCodeで検索時にファイルやフォルダを除外する方法について解説してきました。最後に重要なポイントをおさらいしましょう。

3つの除外方法

方法設定箇所適用範囲推奨用途
一時的な除外検索画面その検索のみ一時的な除外
search.excludesettings.jsonプロジェクト/全体恒久的な除外
.gitignore.gitignoreファイルGitプロジェクトGit管理外ファイル

基本的な設定方法

GUI(設定画面)から

  1. Ctrl/Cmd + ,で設定を開く
  2. 「search.exclude」で検索
  3. パターンを追加

JSONファイルから

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/dist/**": true,
    "**/*.log": true
  }
}

よく使うGlobパターン

*                   → 任意の文字列
**                  → 任意の階層
?                   → 任意の1文字
[]                  → 範囲指定
{}                  → いずれかにマッチ

**/node_modules/**  → すべてのnode_modulesフォルダ
**/*.min.js         → すべての.min.jsファイル
**/dist/**          → すべてのdistフォルダ

推奨設定(Node.jsプロジェクト)

{
  "search.exclude": {
    "**/node_modules/**": true,
    "**/package-lock.json": true,
    "**/dist/**": true,
    "**/build/**": true,
    "**/*.min.js": true,
    "**/*.min.css": true,
    "**/*.map": true,
    "**/*.log": true
  },
  "search.useIgnoreFiles": true
}

設定の保存場所

  • ユーザー設定: すべてのプロジェクトで適用
  • ワークスペース設定: 現在のプロジェクトのみ(.vscode/settings.json)

トラブルシューティングチェックリスト

  • ☐ 除外設定のスイッチがONになっているか
  • ☐ Globパターンが正しいか(**/を忘れていないか)
  • .gitignoreが正しく設定されているか
  • search.useIgnoreFilestrueになっているか
  • ☐ VSCodeを再起動してみたか

効率的な検索のための除外対象

以下は必ず除外設定に追加しましょう:

  • 依存関係フォルダ(node_modulesvendorなど)
  • ビルド成果物フォルダ(distbuildなど)
  • ログファイル(*.log)
  • ミニファイ済みファイル(*.min.js*.min.css)
  • ソースマップ(*.map)
  • Git管理フォルダ(.git)

VSCodeの検索除外機能を活用すれば、検索結果が見やすくなり、検索速度も向上します。プロジェクトに合わせて適切な除外設定をして、快適な開発環境を整えましょう!

コメント

タイトルとURLをコピーしました