git log 查看提交历史
git log 命令显示仓库的提交历史,追溯代码变更记录。
基本用法
Bash
# 查看所有提交历史
git log
# 简洁单行显示
git log --oneline
# 显示最近 N 条
git log -5
git log -n 5
输出格式示例
Bash
$ git log
commit a1b2c3d4e5f6g7h8i9j0 (HEAD -> main)
Author: 张三 <zhangsan@example.com>
Date: Sat May 11 10:00:00 2026 +0800
feat: 添加用户登录功能
commit b2c3d4e5f6g7h8i9j0k1
Author: 李四 <lisi@example.com>
Date: Fri May 10 15:30:00 2026 +0800
fix: 修复登录验证 bug
常用选项
| 选项 | 说明 |
|---|---|
| --oneline | 单行简洁显示 |
| -n, -N | 显示最近 N 条 |
| --graph | 图形化显示分支 |
| --all | 显示所有分支 |
| --author | 按作者筛选 |
| --since, --until | 按时间筛选 |
| --grep | 按提交信息搜索 |
格式化输出
Bash
# 自定义格式
git log --pretty=format:"%h - %an, %ar : %s"
# 常用格式占位符
# %h 简短哈希
# %H 完整哈希
# %an 作者名
# %ae 作者邮箱
# %ad 作者日期
# %s 提交信息
# %ar 相对时间
实用组合
Bash
# 图形化显示所有分支
git log --oneline --graph --all
# 按作者筛选
git log --author="张三"
# 按时间筛选
git log --since="2026-01-01" --until="2026-05-11"
git log --since="2 weeks ago"
# 搜索提交信息
git log --grep="登录"
# 查看文件变更历史
git log -p -- filename
git log --oneline -- filename
查看文件变更
Bash
# 查看某文件的提交历史
git log --follow -- path/to/file
# 显示每次提交的文件变更
git log --name-status
git log --stat
要点总结
git log查看提交历史--oneline单行简洁显示--graph --all图形化显示分支--since/--until按时间筛选--grep搜索提交信息
📝 发现内容有误?点击此处直接编辑