📖 知识点
1. git log:查看提交历史(打开 "相册")
git log
运行示例:
commit a1b2c3d (HEAD -> master)
Author: 小孙 <sun@example.com>
Date: Thu Oct 29 10:00:00 2026 +0800
首次提交:创建外卖App.py
每一条记录就是一次提交:
commit后面是版本 ID,然后是作者、日期、提交说明。
💡 生活比喻
git log像翻相册:每次提交就是一张照片,上面写着拍摄时间、谁拍的、拍的是什么。提交多了,相册就记录了项目一路走来的完整过程。
2. git log 常用视图
git log --oneline # 一行显示一条(更简洁)
运行示例:
a1b2c3d 首次提交:创建外卖App.py
--oneline每条只显示 ID 和说明,提交多了看这个最清爽。
3. commit 信息怎么写?(给 "照片起名字")
好的 commit 信息让人一眼看懂这次干了什么,建议格式:
类型: 简要说明
常用类型:
| 类型 | 含义 | 例子 |
|---|---|---|
| 新功能 |
|
| 修复 Bug |
|
| 文档 |
|
| 重构 |
|
git commit -m "feat: 增加外卖下单功能"
老李的 "照片命名" 心法:
用动词开头(增加 / 修复 / 更新)
写清楚做了什么,别写 "改了点东西"
说明要简短但有信息,别人一看就懂
4. 提交多改动时分开提交
一次提交只做 "一件事",别把无关改动混在一起,方便以后回滚和排查。
⚠️ 易错提醒
git log --oneline一行显示一条,看多了最方便commit 信息别写 "改了点东西" 这种废话,要说清做了什么
一次提交尽量只干一件事,别混杂
⚔️ 剧情 Kata 实战任务
任务需求:
在仓库里再改一次 "外卖 App.py"(比如加个下单函数)
用
git add+git commit提交,说明写成 "feat: 增加下单功能"用
git log看完整历史用
git log --oneline看简洁视图体会 "每次提交 = 一张照片,commit 信息 = 照片名"
参考代码(在终端依次敲)
# 0. 进仓库
cd ~/外卖App
# 1. 改代码,加个下单函数
echo "def 下单(): return '订单已提交'" >> 外卖App.py
# 2. 暂存并提交(写清说明)
git add 外卖App.py
git commit -m "feat: 增加外卖下单功能"
# 3. 完整历史
git log
# 4. 简洁视图
git log --oneline
运行示例:
user@linux:~/外卖App$ git commit -m "feat: 增加外卖下单功能"
[master 55e6f8a] feat: 增加外卖下单功能
1 file changed, 1 insertion(+)
user@linux:~/外卖App$ git log
commit 55e6f8a (HEAD -> master)
Author: 小孙 <sun@example.com>
Date: ...
feat: 增加外卖下单功能
commit a1b2c3d (HEAD -> master)
Author: 小孙 <sun@example.com>
Date: ...
首次提交:创建外卖App.py
user@linux:~/外卖App$ git log --oneline
55e6f8a feat: 增加外卖下单功能
a1b2c3d 首次提交:创建外卖App.py
💡 完成动作示意:
加了 "下单函数",
git add+git commit -m "feat: 增加外卖下单功能"
git log相册里现在有两张照片(两次提交)
git log --oneline简洁显示,一眼看到两次提交做了什么
🧠 思考题
git log和git log --oneline有什么区别?提交很多时用哪个更清爽?为什么 commit 说明要 "动词开头、写清做了什么"?写 "改了点东西" 为什么不好?
行者孙Python