提交历史 Commit Log — 最近改了什么、谁改的
Commit Log 里有什么
每个 commit 条目展示:
- 短 SHA(7 位 commit hash,如
a3f9b2c) - 提交标题(commit message 的第一行)
- 提交者头像 + 名字
- 提交时间(相对时间,如「2 小时前」「昨天」)
点开单个 commit 能看到更详细的信息。
Commit 详情页
变更概要
顶部显示这次提交修改了多少文件、新增了多少行、删除了多少行(格式如 12 files changed, +156 -42)。
Diff 视图
核心部分是改动对比:
- 新增的行 → 绿色底色
- 删除的行 → 红色底色
- 未变动的行 → 正常底色(作为上下文)
Diff 视图默认只展示有改动的文件,每个文件单独一个 Diff 块。对于大改动(一次改几十个文件),Gloom 会按文件折叠,点文件名展开对应 Diff。
Commit Message
完整的 commit message(标题 + 正文),如果正文里有 Markdown 格式化也会渲染。
和 Release 页配合使用
Release 页告诉你"这个版本发了",Commit Log 告诉你"这期间改了什么"。
一个推荐的阅读流程:
- Release 页找最近一个版本的发布时间
- Commit Log 里跳到那个时间点附近的 commit
- 看版本发布前的最后几次 commit——这些通常就是该版本包含的改动
- 想深入看某次改动,点开 Commit 详情看 Diff
大仓库的 Commit Log 性能
超大仓库(比如 Linux kernel、Chromium)的 Commit 数量惊人。Gloom 的 Commit 列表做了分页——一次加载 30 条,滑到底部触发下一页加载。在日常浏览开源项目(几十到几千 commit 量级)时基本感觉不到等待。
Commit message 看不懂怎么办
开源项目的 commit message 风格差异很大:
- 有些项目用 Conventional Commits 规范(
feat: 新增xxx功能、fix: 修复xxx问题)→ 标题就很清楚 - 有些项目写得很随意(
oops、fix、WIP)→ 需要点进 Diff 看实际改了什么 - 有些项目提交者是机器人(Dependabot、Renovate 自动提交依赖更新)→ commit message 会写清楚
chore: bump xxx from 1.2.3 to 1.2.4
Gloom 在任何一种情况下都能正常渲染——commit message 本身就是纯文本展示,不需要解析。