用 Git 分支和 rebase 保持提交历史整洁:入门实践
rebase 保持提交历史整洁:入门实践
多人协作时,提交历史常常变得杂乱:满屏的 “fix”、“update”、合并提交交错。本文介绍几个入门级的 Git 习惯,让历史清晰、便于回溯。
1. 一个功能一个分支
不要直接在 main 上开发:
分支名带前缀(feature/、fix/),一眼能看出用途。
2. 提交要小而有意义
用 git add -p 按片段暂存,把不相关的修改拆成不同提交。提交信息第一行用动词开头,不超过 50 字,例如 “Add email validation to signup form”。
3. 用 rebase 同步主干
开发期间主干有更新,可以:
rebase 会把你的提交“接”到最新主干之后,历史是一条直线。遇到冲突,解决后执行 git add 和 git rebase --continue;想放弃就 git rebase --abort。
注意:已经推送并被他人使用的分支不要 rebase,否则会改写共享历史。
4. 合并前整理提交
本地有多条零碎提交时,用交互式 rebase 合并:
把需要合并的提交前的 pick 改成 squash(或 s),保存后编辑最终的提交信息。
5. 后悔药:reflog
rebase 搞砸了也不用慌,git reflog 记录了 HEAD 的每次移动,找到出错之前的编号,用 git reset --hard HEAD@{n} 即可回到那个状态。
6. 推送
rebase 过自己的分支后需要强推,建议使用更安全的写法:
它会在远程有你没见过的新提交时拒绝覆盖。
小结
分支隔离、小步提交、rebase 同步、合并前整理,再加上 reflog 兜底,就能让历史清爽且可追溯。刚开始可以在练习仓库里多试几次,熟悉后再用到正式项目。
- 点赞
- 收藏
- 关注作者
评论(0)