ファイル内検索からフォルダーを除外するようにVisualStudioに指示するにはどうすればよいですか?


89

Subversionを使用しているため、ソリューションには_svnという名前のサブフォルダーがあります。ファイル内の検索を実行すると、これらのサブフォルダーから文字列が返されます。これらのファイルを無視するようにVisualStudioに指示する方法はありますか?


7
これは、VisualStudioのファイル内検索でかなり気になりました。@rafbelが述べたように、私は「サブフォルダーを含める」をオフにすることになりますが、それは余分な手順になるか、後でオフにするのを忘れてしまいます。素敵なメインルートフォルダを検索すると言うが、私は、サードパーティのライブラリを心配していないよので、私の「ベンダー」フォルダを無視するだろう。..
リッチFinelli

誰かがこの質問を見つけた場合、またはVSのUserVoiceページに追加した場合は、ここにリンクを投稿してください。全員が賛成できます。
pbarranis 2018年

これは私を夢中にさせます。最近、[探す場所]ドロップダウンボックスをカスタマイズする機能を発見しました。私たちのソリューションには、インストーラー部分を構成するいくつかのプロジェクトが含まれているため、作業中は検索をそれらのプロジェクトのみに制限すると便利です。そこで、インストーラーの「ルックイン」プロファイルを作成しました。ただし、各プロジェクトのすべてのフォルダーとサブフォルダーを手動で指定する場合を除いて、[サブフォルダーを含める]をオンのままにする必要があります。これにより、すべてのbinフォルダーとobjフォルダーが取得されます。とてもうるさい。
ブライアンコラビト

回答:


31

あなたができることは、検索に使用されるフォルダのセットを設定することです。[検索と置換]ウィンドウの[検索]入力の右側に、[検索フォルダーの選択]オプションがあり、これらのフォルダーのセットを設定できます。
ルートプロジェクトフォルダを追加した場合は、「サブフォルダを含める」オプションをオフにすることを忘れないでください。
何百ものフォルダがない場合、このソリューションは機能するはずです。


15
いいえ、そうすべきではありません。フォルダを除外するのではなく、検索に含める方法を説明しているからです。それは私見ではかなり大きな違いです。
JanPalas19年

2
私は何百ものフォルダを持っています。それらはすべてnode_moduleslolと呼ばれるものに住んでいます
何も必要ありません

23

Visual Studio 2017に移行し、Angular + .net Coreアプリケーションを開始するまで、グローバル検索で問題が発生することはありませんでした...(主に検索対象の巨大なnode_modulesフォルダーの問題)

MSBuild除外プロパティDefaultItemExcludesを使用すると、Visual Studio2017のグローバル検索から除外するのに問題なく機能することがわかりました。

デフォルトで、VS2017の新しいコアプロジェクトのプロジェクトファイル(.csproj)を開き、次のようにプロパティを調整してnode_modulesを除外します(場合によってはwwwrootも追加します)。

<DefaultItemExcludes>$(DefaultItemExcludes);node_modules\**</DefaultItemExcludes>

https://github.com/dotnet/cli/issues/7525も参照して ください。除外するフォルダーの前に追加することをお勧めします。次のように、バックスラッシュではなくスラッシュを使用しているようです。

<PropertyGroup>
  <DefaultItemExcludes>node_modules/**;$(DefaultItemExcludes)</DefaultItemExcludes>
</PropertyGroup>

これがVS2017グローバル検索/検索で問題が発生している人に役立つことを願っています。


どうもありがとう。この質問がSOで何度も尋ねられ、誰もこの答えを理解しなかったのは奇妙なことです
AshrafSabry19年

おかげで、これが答えなければなりません
ダン・パーカー

Visual Studio 2017のAngularプロジェクトはすべて、MSBuildファイルやプロジェクトファイル(*.csprojなど)のない「フォルダー」プロジェクトであるため、DefaultItemExcludesどこにも設定できません。私はSOLですか?
ダイ

これはVS2019では機能しませbootstrap.cssん。ファイルを除外しようとしましたが、とにかく検索されました。<DefaultItemExcludes>assets/css/**;$(DefaultItemExcludes)</DefaultItemExcludes>
VDWWD

18

[ファイルの検索]、[ファイルの種類]、または[これらのファイルの種類を確認]から、次を使用できます。

!*\ExcludeFolder\*

例:

!*\bin\*;!*\obj\*;!*\.*;!*\ExcludeFolder\*

ここに画像の説明を入力してください


そのスクリーンショットは、この答えはVS 2017で動作しませんVS 2019年からである
スコット・ハッチンソン

1
VS2019でこの問題に遭遇したとき、これはまさに私が探していたものです。ありがとうございました!
マスドットネット

1
すごいもの。Nodeを使用していますが、node_modulesフォルダーを検索したくありません。ありがとう
BoundForGlory

9

Visual Studio2015とTortoiseSVNを使用してWindows10に移行すると、この問題が発生しました。以前は、.svnフォルダーはすべて非表示であったため、検索結果には表示されませんでした。これを解決するには、Windowsエクスプローラーのフォルダーのプロパティに移動し、.svnフォルダーの[非表示]属性を確認しました。Visual Studioでフォルダービューを更新した後、.svnフォルダーは表示されなくなり、Find!を使用すると無視されます。

.svnフォルダー属性を非表示に設定します


申し訳ありませんが、VS 2017をまだインストールしていないため、確認できません。
brightfunction

1
これはVS2017では機能しないようです。さらに、IISExpressがフォルダーを見つけるのを停止するため、問題も発生しました:(
pbarranis 2018年

VS 2015Proで完全に機能します。私はまだ悪影響を見ていません:
BizzyBob18年

5

ディレクトリ(この場合はソリューションのディレクトリ)内のファイルを検索する代わりに、プロジェクトまたはソリューションの一部であるファイルに検索を制限することができます。したがって、_svnディレクトリ内のものは無視されます。


2
ソリューション内にネストされたプロジェクトフォルダーがあります。したがって、何かを見つけるためにそれぞれに入るのは時間がかかります
Bernard

[ファイルで検索]ダイアログには、[現在のプロジェクト]または[ソリューション全体]に設定できる[検索]入力フィールドがあります。後者はあなたにとって役に立ちませんか?私は...それから、何かを見逃している必要があります
ザビエルNodet

2
少なくとも私の場合は@XavierNodetですが、ソリューションに検索したくないファイルがありますが、それらを出力ディレクトリにコピーするためにソリューションに必要です-例:テストフィクスチャまたはその他の静的なテキストベースのリソース。
トムリアンザ2012

5

Visual Studio 2017で、特にAngularCliを使用しているときに見つけましたを、生成されたjavascriptファイルやその他のビルドファイルがプロジェクトに無意識のうちに追加されることがあることが。これにより、検索に大量のファイルを追加したり、ソースファイルの上に生成されたすべてのファイルを検索するため、特にインテリセンスの速度が大幅に低下したりするなど、いくつかの問題が発生する可能性があります。

これを修正するために私が見つけた最も簡単な方法は、ビルドフォルダ(つまり{Project}/dist)を右クリックしてを選択することExclude from Projectです。これにより、プロジェクトからフォルダーが削除されますが、生成されたコンテンツは引き続き実行時に使用でき、UIから非表示になります。

ここに画像の説明を入力してください

それでもファイルを表示する必要がある場合Show all Filesは、アイコンを選択またはクリックして、隠しディレクトリとファイルを表示できます。 ここに画像の説明を入力してください は、ソリューションエクスプローラーの上部を。

基本的に、プロジェクト/ソリューションからすべてのビルドフォルダーを除外する必要があります。


フォルダを「除外」することはできず、ファイルのみを除外できると思います。少なくとも私のバージョンのVisualStudio 2017では。プロジェクト内のフォルダーを右クリックすると、[プロジェクトから除外]オプションがコンテキストメニューに表示されません。
ピート

1
このオプションは、VS 2017のWebサイトプロジェクトでは使用できません。
richardtallent19年

@richardtallent:VS2017とVS2019の両方で再確認しましたが、フォルダーを削除するオプションがあります。オプションの場所のスクリーンショットについては、更新された回答を参照してください。
アンディブラハム

@ AndyBraham、Webサイトプロジェクトタイプ(ソリューションファイルのE24C65DC-7377-472B-9ABA-BC803B73C61A)を使用しています。これは、[新しいプロジェクト]ダイアログで使用できなくなったレガシープロジェクトタイプである可能性があります。このタイプのプロジェクトのフォルダのコンテキストメニューでは、[除外]オプションは使用できません。私はVueCLI / UIとGulpを使用してVSの外部でサイトを構築しているので、私のために働いた唯一の修正は、ソリューションからプロジェクトを削除することでした(とにかくフロントエンドコードにVS Codeを使用します)。
richardtallent

3

これを設定することはできないと思いますが(結局のところ、「ソリューション全体」の検索を求めています)、プロジェクトからフォルダーを削除したり、ファイルシステム内のディレクトリを非表示にしたりできます(Webサイトプロジェクトタイプの場合)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.