【问题标题】:vscode - how to get file search (not content) to include (git-) ignored filesvscode - 如何让文件搜索(不是内容)包含(git-)被忽略的文件
【发布时间】:2022-04-29 21:53:53
【问题描述】:

虽然这不是一个直接的开发问题,但确实涉及到一个开发工具,这与我的开发工作非常相关:

当我在 VSCode (CTRL+P) 中搜索文件时,我发现它不包括属于 .gitignore 文件的文件和文件夹。

我可以很好地看到其中的逻辑,这很好,但是如何禁用此(默认?)行为?意思是,我确实希望此搜索包括项目中的所有文件,无论 .gitignore 文件(或任何其他忽略文件,就此而言)。

【问题讨论】:

    标签: visual-studio-code


    【解决方案1】:

    打开visual studio代码设置(cmd+,在Mac或Ctrl+,),搜索设置:

    Search: Use Ignore Files

    并取消勾选复选框

    【讨论】:

    • 有没有办法为单个搜索做到这一点?如中所示,不要使用设置来控制是否忽略 .gitignore 文件,只需在搜索前加上 all . . . 之类的前缀。我意识到这是一个远景。
    • 您可以在执行搜索时切换“使用排除设置并忽略文件”:user-images.githubusercontent.com/323878/…
    • 不知道为什么它不适用于我在.gitignore 下提到的所有人。
    • 有没有办法在忽略所有其他文件的同时包含某个目录
    • @gbalduzzi 幸运的是,这也会影响Ctrl-p/Ctrl-e 搜索。没有任何可调整的控件。
    【解决方案2】:

    正如this answer 中的屏幕截图所示,vscode 在.gitignore.ignore 中都使用了规则。由于 Git 只识别 .gitignore,我们可以否定 .ignore 中的一些规则,将它们带回 vscode 搜索结果中。

    一个演示:

    .gitignore

    .env.local
    

    .忽略

    !.env.local
    

    此技巧也适用于rgfd 等工具。

    【讨论】:

      【解决方案3】:

      不知道这是否仍然有用,但我发现的一种方法是。配置选项中有一个search.exclude 设置

      通常我们会通过将其设置为 true 来使用它来排除模式。但是,我们可以通过将规则设置为 false 来强制包含排除模式

      {
          "files.exclude": {
              "**/*.asset":true,
              "**/*.mat":true,
              "**/*.meta":true,
              "**/*.prefab":true,
              "**/*.unity":true,
          },
          "search.exclude": {
              "**/*.asset":false,
              "**/*.mat":false,
              "**/*.meta":false,
              "**/*.prefab":false,
              "**/*.unity":false,
          }
      }
      

      这是我对统一项目的设置,这使得所有被忽略的元文件都从资源管理器中丢失。但我仍然可以搜索它的内容

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-11-28
        • 1970-01-01
        • 2020-04-25
        • 1970-01-01
        • 2014-10-24
        • 1970-01-01
        • 2010-11-01
        • 1970-01-01
        相关资源
        最近更新 更多