如何列出特定日期以来所有Git提交中新增的文件?
列出指定起始日期后所有Git提交中新增的文件
直接执行以下命令即可,示例为筛选2019年10月1日起所有提交里新增的文件:
git log --since="2019-10-01" --diff-filter=A --name-only --pretty=format: | sort -u
参数说明
--since="2019-10-01":过滤提交时间晚于指定日期的所有提交,可根据实际需求替换起始日期,支持2024-01-01、"2 years ago"、"2023-10-01T12:00:00"等多种日期格式--diff-filter=A:仅保留文件状态为*新增(Added)*的变更,自动过滤修改、删除、重命名类的文件变动--name-only:只输出变动对应的文件名,不展示具体代码diff内容--pretty=format::清空提交元信息(提交哈希、提交人、提交备注等)的输出,避免无关内容混入文件列表| sort -u:对输出的文件列表去重并排序,同一个文件如果新建后又被多次修改,最终只会保留一条记录
补充用法
如果需要把结果导出为本地文本文件留存,直接在命令末尾追加导出路径即可:
git log --since="2019-10-01" --diff-filter=A --name-only --pretty=format: | sort -u > 新增文件清单.txt
注意:如果本地是浅克隆仓库,先执行
git fetch --unshallow拉取完整提交历史后再运行上述命令,避免遗漏早期提交记录。
内容的提问来源于stack exchange,提问作者Ranjeet
相关产品推荐
相关产品推荐

