git生成提交流水
1. 基础的提交记录查看
2. 简洁格式的提交记录
3. 查看指定范围的提交记录
通过日期范围
通过分支范围
4. 包含文件变更信息的提交记录
5. 可视化的提交记录
6. 将提交记录输出到文件
示例脚本
可以把指定日期范围内的提交记录保存到
commit_log.txt
文件中。Git 生成提交历史的几种方法
1. 查看基本提交历史
git log
这会显示完整的提交历史,包括提交哈希、作者、日期和提交信息。
2. 简洁格式的提交历史
git log --oneline
显示简化的提交历史,每行只包含提交哈希的前7位和提交信息。
3. 图形化提交历史
git log --graph --oneline --decorate --all
这会显示分支和合并的可视化历史,非常适合查看复杂的分支结构。
4. 按作者筛选提交历史
git log --author="用户名"
只显示特定作者的提交。
5. 按时间范围筛选
git log --since="2023-01-01" --until="2023-12-31"
显示2023年全年的提交历史。
6. 按文件筛选
git log -- path/to/file
只显示影响特定文件的提交。
7. 生成统计报告
git log --stat
显示每次提交更改的文件统计信息。
8. 生成补丁格式
git log -p
显示每次提交的详细差异。
9. 自定义格式输出
git log --pretty=format:"%h - %an, %ar : %s"
自定义格式选项:
-
%h
- 缩短的提交哈希 -
%an
- 作者名字 -
%ar
- 作者日期,相对格式 -
%s
- 提交信息
10. 生成HTML格式的提交历史
git log --pretty=format:'<li><a href="https://github.com/your/repo/commit/%H">%h</a> - %s (%an, %ar)</li>' > commits.html
11. 生成变更统计报告
git log --numstat --pretty=format:"%H" > changes.csv
12. 生成JSON格式的提交历史
git log --pretty=format:'{%n "commit": "%H",%n "author": "%an",%n "date": "%ad",%n "message": "%s"%n},' > log.json
13. 生成Markdown格式的变更日志
git log --pretty=format:"- %s ([%h](https://github.com/your/repo/commit/%H))" --reverse > CHANGELOG.md
14. 查看特定分支的提交历史
git log branch-name
15. 查看两个提交之间的差异
git log commit1..commit2
提示
-
添加
--no-merges
可以过滤掉合并提交 -
使用
-n
参数限制显示数量,如git log -n 5
-
结合
grep
可以搜索提交信息,如git log --grep="bug fix"