Git误操作急救手册大纲

常见误操作场景分类
  • 提交相关误操作(误提交、提交信息错误)
  • 分支操作失误(误删分支、错误合并)
  • 工作区文件丢失(误删未提交文件)
  • 远程仓库操作问题(强制推送覆盖历史)
撤销本地提交

git reset --soft/hard/mixed <commit-hash> 使用场景对比 git commit --amend 修改最后一次提交信息或内容 git reflog 找回丢失的提交记录

恢复误删分支

git branch <branch-name> <hash> 通过提交哈希重建分支 git fsck --lost-found 查找悬挂提交对象 git cherry-pick <commit-hash> 恢复特定提交到新分支

工作区文件恢复

git checkout -- <file> 撤销未暂存的修改 git restore <file> Git 2.23+新恢复命令 git stash 暂存当前工作现场

远程仓库修复

git push -f 强制推送的正确使用场景 git revert <commit-hash> 创建逆向提交撤销历史更改 git fetch origin <branch> 恢复被覆盖的远程分支

预防措施与最佳实践

配置.gitignore文件避免误提交 定期创建备份标签(tag) 使用Git钩子进行提交前验证 重要操作前使用git stash save保存工作状态

高级恢复工具

git bisect 二分查找定位问题提交 git filter-repo 敏感信息清理 git archive 备份特定版本代码

常见问题Q&A

如何找回没有commit的修改? 强制推送后如何团队协作恢复? .git目录损坏时的修复方案

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐