Git 实用技巧:暂存现场、挑选提交与定位 Bug(摘录)
· 2 min read
作者:imDwAaY
原文:6篇文章讲清楚Git:Git 实用技巧:暂存现场、挑选提交与定位 Bug (5/6)
发布于:2026-09-28 19:22
以下为阅读摘要。文章围绕开发中断、迁移修复、追查问题及整理提交,介绍了一组 Git 实用命令。
命令速记
| 需求 | 命令 | 要点 |
|---|---|---|
| 暂存未完成工作 | git stash -u | 包含未跟踪文件;恢复前用 git stash list 确认记录 |
| 恢复暂存内容 | git stash apply / git stash pop | 前者保留记录,后者成功恢复后移除记录 |
| 引入指定修复 | git cherry-pick <commit> | 将改动应用到当前分支,通常生成新提交 |
| 搜索内容变更 | git log -S "keyword" | 查找指定字符串出现次数发生变化的提交 |
| 查看行的修改来源 | git blame -w path/to/file | 忽略空白差异;结果未必指向最初引入问题的提交 |
| 二分定位问题 | git bisect | 提供已知正常与异常版本,逐轮验证 |
| 整理本地提交 | git rebase -i HEAD~4 | 合并、重排或修改提交;注意改写共享历史的影响 |
| 同时处理多个分支 | git worktree | 使用独立工作目录,避免反复切换现场 |
二分排查流程
git bisect start
git bisect bad
git bisect good <known-good-commit>
# 验证 Git 检出的版本,再执行 good 或 bad,重复至定位完成
git bisect good
git bisect reset
有自动检测脚本时,可用 git bisect run ./test.sh 执行验证;结束后用 git bisect reset 返回起始状态。