ShellGit规范
提交信息是可检索的变更日志
Conventional Commits 用固定前缀表达意图,例如 feat:、fix:、docs: 和 chore:。范围可选,但摘要要说明用户或维护者能感知到的变化。
feat(auth): add refresh token rotation
fix(api): return 422 for invalid date range
docs: clarify local database setup准备合并前,用交互式 rebase 整理自己的提交:合并临时提交、修正顺序、补全说明。只对尚未被他人基于其开发的个人分支改写历史。
git fetch origin
git rebase -i origin/main
# pick / squash / reword定位回归
git bisect 把线性排查变成二分。准备一个可自动判断好坏的命令,结果会比手动浏览提交可靠。
- 开始前确保工作区干净,并记录当前复现步骤。
- bisect 完成后必须执行
git bisect reset回到原分支。 - 不要为了“整洁”强推共享分支;协作优先于漂亮历史。
rebase 之前先 fetch 远端主分支,减少基于过期基线整理提交导致的二次冲突。
对难以复现的回归,把测试命令写成脚本传给 bisect,比依赖人工判断更可重复。