生成Markdown格式的Git提交摘要报告。适用于需以Markdown输出仓库详细统计的场景。输出包含项目信息、分支、提交统计、作者统计、最近提交记录及提交类型统计等,均以Markdown呈现。
Git Log Summary Skill (Markdown格式)
功能概述
Git Log Summary Skill (Markdown格式)是一项面向实际任务的技能,主要用于此技能用于生成Markdown格式的Git提交记录摘要报告,适合文档化、分享和在线阅读;生成当前git仓库的Markdown格式提交记录摘要:;
核心要点
- 输出格式示例;
- scripts/generate_git_summary.sh - Markdown格式脚本,生成完整的git提交记录摘要。
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
结果检查与注意事项
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
Git Log Summary Skill (Markdown格式)
此技能用于生成Markdown格式的Git提交记录摘要报告,适合文档化、分享和在线阅读。
快速开始
基本用法
生成当前git仓库的Markdown格式提交记录摘要:
./scripts/generate_git_summary.sh
输出格式示例
# 项目名 Git提交记录摘要 ## 报告信息 - **生成时间**: 2026-03-25 20:03:35 - **仓库路径**: `/path/to/repository` - **仓库基本信息**: - **Git版本**: 2.39.5 - **仓库创建时间**: 2026-03-05 - **最后提交时间**: 2026-03-25 ## 分支信息 ### 当前分支 `master` ### 远程仓库 - origin https://example.com/repo.git (fetch) - origin https://example.com/repo.git (push) ## 提交统计 ### 总提交数 **总提交数**: 30 ### 按作者统计 | 作者 | 提交次数 | 占比 | |------|----------|------| | user1 | 21 | 70.00% | | user2 | 7 | 23.33% | ## 最近提交记录 显示最近 20 条提交记录: | Commit Hash | 作者 | 提交时间 | 提交日志 | |-------------|------|----------|----------| | abc123 | user1 | 3 hours ago | feat: 新增功能 | | def456 | user2 | 5 hours ago | fix: 修复问题 | ## 所有分支 ### 本地分支 - master - feature-branch ### 远程分支 - origin/HEAD - origin/master ## 提交类型统计 基于最近1000条提交信息的类型分析: | 类型 | 数量 | 占比 | 说明 | |------|------|------|------| | feat | 27 | 90.0% | 新功能 | | fix | 2 | 6.7% | Bug修复 | --- *报告生成完成*
脚本功能
主要脚本
scripts/generate_git_summary.sh - Markdown格式脚本,生成完整的git提交记录摘要
功能特性
项目信息提取:
- 自动获取项目名称(从git remote或目录名)
- 获取仓库路径和基本信息
- 记录生成时间
分支信息:
- 当前分支
- 远程仓库信息
- 所有分支列表
提交统计:
- 总提交数
- 按作者统计提交次数和占比(Markdown表格格式)
- 提交类型统计(feat, fix, merge等)
详细提交记录:
- 最近提交的详细记录(Markdown表格格式)
- 格式化输出:Commit Hash | 作者 | 提交时间 | 提交日志
提交类型分析:
- 自动分析提交信息中的类型前缀
- 统计各类提交的数量和占比
- 提供类型说明
使用示例
# 生成默认报告(自动保存为 项目名-git-log-年月日-时分秒.md) ./scripts/generate_git_summary.sh # 指定输出文件 ./scripts/generate_git_summary.sh -o custom-report.md # 限制最近提交数量 ./scripts/generate_git_summary.sh -n 20 # 包含所有分支的统计 ./scripts/generate_git_summary.sh -a # 组合使用 ./scripts/generate_git_summary.sh -n 15 -a
自动文件名格式
当不指定-o参数时,脚本会自动生成文件名:
项目名-git-log-年月日-时分秒.md
示例:
long-shop-git-log-20260325-203045.md
文件名组成:
- 项目名: 从git remote或目录名自动提取
- git-log: 固定标识
- 年月日: 报告生成日期(如20260325)
- 时分秒: 报告生成时间(如203045)
远程仓库分析
远程分析脚本
scripts/generate_git_summary_remote.sh - 专门用于分析远程Git仓库
功能特性
- 自动克隆: 自动克隆远程仓库到临时目录
- 保留报告: 生成报告后保留报告文件
- 可选保留: 可选择保留或删除克隆的仓库
- 完整分析: 包含所有本地分析功能
远程仓库使用示例
# 分析远程仓库(自动生成报告文件) ./scripts/generate_git_summary_remote.sh -u https://gitee.com/forever_1236/long-shop.git # 指定输出文件 ./scripts/generate_git_summary_remote.sh -u https://gitee.com/user/repo.git -o my-report.md # 保留克隆的仓库目录 ./scripts/generate_git_summary_remote.sh -u https://github.com/user/repo.git -k # 组合使用 ./scripts/generate_git_summary_remote.sh -u https://gitee.com/user/repo.git -n 30 -a -o report.md
脚本参数
本地分析脚本 (generate_git_summary.sh)
-o, --output: 指定输出文件(默认自动生成:项目名-git-log-年月日-时分秒.md)-n, --num-commits: 指定显示的最近提交数量(默认20)-a, --all-branches: 包含所有分支的统计(默认只统计当前分支)-h, --help: 显示帮助信息
远程分析脚本 (generate_git_summary_remote.sh)
-u, --url: 远程Git仓库URL(必需)-o, --output: 指定输出文件(默认自动生成)-n, --num-commits: 指定显示的最近提交数量(默认20)-a, --all-branches: 包含所有分支的统计(默认只统计当前分支)-k, --keep-clone: 保留克隆的仓库目录(默认不保留)-h, --help: 显示帮助信息
提交类型识别
脚本会自动识别以下提交类型:
feat: 新功能fix: Bug修复merge: 合并分支docs: 文档更新style: 代码格式调整refactor: 代码重构test: 测试相关chore: 构建过程或辅助工具变动perf: 性能优化ci: CI/CD相关build: 构建系统revert: 回退提交
注意事项
- 确保在git仓库中: 脚本必须在git仓库目录下运行
- git版本: 需要git 1.8.0或更高版本
- 权限: 需要读取git配置和提交历史的权限
- 大型仓库: 对于大型仓库,统计所有提交可能需要较长时间
故障排除
常见问题
"错误:当前目录不是git仓库":
- 确保当前目录是git仓库
- 运行
git init初始化新仓库
统计不准确:
- 运行
git fetch --all更新远程分支信息 - 使用
-a参数包含所有分支统计
- 运行
提交类型识别错误:
- 检查提交信息是否符合约定格式(如 "feat: 添加新功能")
- 调整脚本中的类型匹配规则
性能优化
对于大型仓库:
- 使用
-n参数限制最近提交数量 - 避免使用
-a参数除非必要 - 考虑使用
git log --since限制时间范围
热门AI工具
相关专题
要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
2281
2024.04.09
git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
2517
2024.04.09
Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。
714
2023.07.24
git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。
1260
2023.07.06
本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。
0
2026.10.22
本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。
0
2026.10.22
本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。
0
2026.10.22
本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。
0
2026.10.22
热门下载
相关下载
