You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询修改了指定扩展名(如.YAML、.JSON)文件的所有Git提交记录?

Git查询修改指定扩展名文件提交的操作方法

基础查询操作

你可以直接使用git log的路径过滤功能实现需求,命令规则为在git log后添加-- 后缀匹配规则即可:

  • 查询仅修改了YAML格式文件的提交:
git log -- '*.yaml' '*.yml'

单引号作用是避免Shell提前展开通配符,确保匹配到仓库所有层级目录下的对应后缀文件,如果你使用大小写不敏感的系统需要匹配.YAML这类大写后缀,可添加-i参数。

  • 查询修改了YAML 或 JSON格式文件的提交(只要修改了其中一种后缀就命中):
git log -- '*.yaml' '*.yml' '*.json'
  • 查询同时修改了YAML和JSON两种格式文件的提交(一次提交中两种后缀的文件都有修改才命中):
git log --all-match -- '*.yaml' '*.yml' '*.json'

常用进阶参数

你可以搭配以下参数满足不同查询需求:

  • 查看每次提交的具体文件改动内容,添加-p参数:
    git log -p -- '*.yaml' '*.json'
  • 仅展示提交哈希、提交信息和修改的文件名,添加--name-only参数:
    git log --name-only -- '*.yaml' '*.json'
  • 限制查询时间范围,比如只查最近30天内的提交,添加--since参数:
    git log --since="30 days ago" -- '*.yaml' '*.json'

注意事项

如果你在Windows的CMD或PowerShell环境中执行命令,单引号可能不生效,可以替换为双引号,或者直接去掉引号写通配符,示例:git log -- *.yaml *.json
如果你仅需要匹配当前目录下的对应后缀文件,不需要递归匹配子目录,去掉通配符前的*即可,示例:git log -- *.yaml

内容的提问来源于stack exchange,提问作者Jimmy Zhao

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 11:54:00