“各位有没有经历过这样的绝望时刻?——
git push
后惊呼‘完了!我把生产环境配置推上去了!’ 或是git reset
后代码凭空消失… 别慌!今天分享的 6条Git神技,能让你从‘删库跑路’边缘华丽转身!”
紧急回退:救火队长 reflog
# 查看所有操作记录(包括已删除的提交)
git reflog
# 找到误删的commit哈希值,一键复活
git checkout -b rescue-branch <commit_id>
优雅撤销:commit --amend
的魔法
# 修改最后一次提交(追加改动/重写信息)
git add missed-file.js
git commit --amend --no-edit # 不修改提交信息
分支清理大师:prune
与 worktree
# 一键扫描并删除所有关联到已消失远程分支的本地分支
git fetch -p # --prune的缩写!
优雅重写历史:rebase -i
进阶技巧
git rebase -i HEAD~5 # 修改最近5个提交
镜像对比:range-diff
(提交对比神器)
# 对比 branch-v1 和 branch-v2 的提交差异
git range-diff origin/main...feature-branch
甩锅神器:blame -L
(精准追溯代码作者)
# 查看第 50-60 行代码的修改历史
git blame -L 50,60 src/index.js