用途:以 Git 历史为唯一事实来源,按项目和日期生成每日工作内容总结,输出简洁的中文编号清单。适用场景包括用户要求生成日报、每日工作总结,或要求用 1、2、3 编号列出某天或某段日期完成的事项。
主要能力:支持单日、多个离散日期或连续日期区间;默认只统计提交作者为用户本人的提交,使用 .mailmap 归一化历史身份,按提交时间(本地时区)归入日期;先读提交元数据,再按需检查改动范围与必要 diff,将同一功能的实现、修复、测试和文档合并为一个事项。
必要用法:需提供项目路径(未提供时用当前工作目录)和日期(缺失时必须询问)。确认本人身份时,优先使用用户提供的邮箱或身份列表,否则读取 git config --get user.email;无法可靠确认本人身份时必须询问,不得改为统计全部作者。用 git rev-parse --show-toplevel 确认仓库根目录。提取元数据使用:git log --all --use-mailmap --since="<开始时间>" --until="<结束时间>" --date=iso-local --pretty=format:"%Ht%cIt%aNt%aEt%s%n%b"。检查改动使用:git show --stat --summary --name-status <commit>;必要时读取 diff:git show --format= --unified=2 <commit> -- <相关文件>。
限制:不自动执行 git fetch、git pull 或切换分支;不把工作区未提交文件、当前代码状态或其他日期提交写入总结;不凭 commit 标题总结;默认不显示 commit hash,用户要求可追溯时才附短 hash;无提交时输出“该日期没有已提交工作内容”,不改写为“没有工作”;浅克隆或历史不完整时注明仅基于当前可见 Git 历史。