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

如何在Git中查看自指定日期以来仓库新增的所有文件?

查询Git仓库指定时间后新增文件的操作方法

直接用Git原生命令就能拿到准确的新增文件列表,不需要额外安装工具,完全可以满足修改Makefile时核对新增源码文件的需求。

基础查询命令

执行以下命令即可输出指定日期之后,仓库内所有新增的文件路径:

git log --since="YYYY-MM-DD" --diff-filter=A --name-only --pretty=format: | sort -u

参数说明:

  • --since="YYYY-MM-DD":替换为你需要的起始日期即可,支持标准日期格式(比如2024-01-15),也支持相对时间写法(比如"3 months ago"、"last monday")
  • --diff-filter=A:仅筛选提交记录中状态为「新增(Added)」的文件,自动过滤被修改、删除、重命名的文件
  • --name-only:仅输出变动的文件路径,不展示提交哈希、提交说明、作者等冗余信息
  • --pretty=format::清空Git log默认输出的提交元信息,避免非文件路径的内容混进结果
  • sort -u:对输出的文件列表去重、按字典序排序,避免同一个文件被多次提交时重复出现在结果里

常用场景变体

  • 只查询指定目录下的新增文件,比如仅排查src源码目录:
git log --since="2024-01-01" --diff-filter=A --name-only --pretty=format: -- src/ | sort -u
  • 查询指定分支的新增文件,比如查dev分支的记录:
git log dev --since="2024-01-01" --diff-filter=A --name-only --pretty=format: | sort -u
  • 不按日期、按版本节点查询,比如查v2.0标签发布之后到当前版本的新增文件:
git log v2.0..HEAD --diff-filter=A --name-only --pretty=format: | sort -u
  • 把结果直接导出到文本文件,方便逐行对照修改Makefile:
git log --since="2024-03-01" --diff-filter=A --name-only --pretty=format: | sort -u > new_file_list.txt

注意:如果仓库有子模块,需要查询子模块内的新增文件时,进入对应子模块目录执行上述命令即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 22:09:18