Neatbo.

Gitignore 路径规则检查

按单个根目录 Gitignore 检查指定路径,列出最后匹配规则及阻挡重新包含的父目录。

浏览器本地处理输入.gitignore + 路径输出JSON / CSV单个文件最多 1 MiB · 最多 1 个
  1. 1添加输入
  2. 2调整设置
  3. 3获取结果

工具输入和文件在当前浏览器处理,不会上传。

输入内容

切换工具时在当前标签页临时保留输入。刷新或关闭后清除,较大的结果可能需要重新生成。

⌘ / Ctrl + Enter 运行

或将文件拖到这里

文件留在当前设备,原始文件不会被覆盖。

.gitignore · .txt · .ignore

单个文件最多 1 MiB · 最多 1 个

    0 个字符 · 0 字节
    处理选项

    先填写标记为必填的选项,其余可保留默认值。

    正在准备处理工具…

    开始之前

    修改忽略规则前,先查清某个路径为什么被忽略。使用原始路径拼写,以末尾斜杠声明目录,并查看最终生效规则。

    如何使用

    1. 粘贴或打开一个根目录 .gitignore,每行输入一条路径,保留大小写和有意义的空格。
    2. 用末尾 / 标记目录,查看状态、规则行号及阻挡父目录。
    3. 下载完整报告;实际仓库中的已跟踪文件、全局规则和嵌套规则需要另外检查。

    支持范围与限制

    一个 UTF-8 规则文件或粘贴规则,加路径列表,合计不超过 1 MiB。最多 5,000 个物理规则行、10,000 条路径;每条路径最多 1,024 个 UTF-16 单元、32 个层级。最多执行 2,000,000 次规则匹配。所选文件优先。

    路径是相对规则根目录、区分大小写的 POSIX 名称。末尾 / 声明目录,未标记的最后一段声明文件。不接受绝对路径、反斜杠、空段、.、.. 或控制字符。不读取仓库、已跟踪状态、全局规则或嵌套规则。

    复用锁定的 ignore 7.0.5 编译规则,支持转义 #/!、空格、字符集合、** 和否定。最后直接匹配的规则生效;被排除的父目录阻止重新包含子路径,报告显示该父目录及其生效规则。允许空规则或纯注释。支持 LF/CRLF,拒绝仅 CR 换行。

    表格显示前 200 条路径,JSON/CSV 下载保留全部路径。默认对类似公式的 CSV 单元格加单引号;JSON 保留路径与规则原文。

    操作示例

    示例输入

    *.log
    !keep.log
    build/
    !build/keep.txt
    示例参数
    {"secondary": "a.log\nkeep.log\nbuild/keep.txt\nsrc/main.ts", "params": {}}

    示例输出

    {
      "scope": "one root .gitignore; supplied paths only",
      "records": [
        {
          "path": "a.log",
          "directory": false,
          "ignored": true,
          "status": "ignored",
          "line": 1,
          "pattern": "*.log",
          "blockingPath": null
        },
        {
          "path": "keep.log",
          "directory": false,
          "ignored": false,
          "status": "unignored",
          "line": 2,
          "pattern": "!keep.log",
          "blockingPath": null
        },
        {
          "path": "build/keep.txt",
          "directory": false,
          "ignored": true,
          "status": "ignored",
          "line": 3,
          "pattern": "build/",
          "blockingPath": "build/"
        },
        {
          "path": "src/main.ts",
          "directory": false,
          "ignored": false,
          "status": "unmatched",
          "line": null,
          "pattern": null,
          "blockingPath": null
        }
      ]
    }

    出现问题时

    修正路径拼写并显式标记目录。切换到粘贴规则时先移除所选文件。匹配预算超限时,减少路径或规则数量,或拆成较小批次。

    常见问题

    被忽略目录中的否定规则会生效吗?

    父目录仍被排除时,不能重新包含子路径。请先重新包含父目录。

    会判断文件是否已被 Git 跟踪吗?

    不会。这里只检查输入的根目录规则,跟踪状态不属于输入。

    结果中的规则行为空是什么意思?

    没有直接匹配该文件或目录的规则,也没有被排除的父目录阻挡。明确匹配否定规则的路径会单列为 unignored。

    文档与延伸阅读

    相关工具