Git误操作急救手册大纲常见误操作场景分类文件误删、提交信息错误、分支操作失误、远程仓库覆盖、硬重置hard reset导致代码丢失撤销本地未提交的更改git checkout -- file丢弃单个文件的修改git restore fileGit 2.23恢复文件到上次提交状态git clean -df删除未跟踪的文件和目录修复已提交但未推送的错误git commit --amend修改最后一次提交信息或内容git reset --soft HEAD~1撤销提交但保留更改在工作区git revert HEAD创建反向提交来撤销更改适合已推送的情况分支操作恢复git reflog查看所有分支操作历史记录git checkout -b new-branch commit-hash通过reflog找到丢失的提交重建分支git branch -f branch-name commit-hash强制分支指向特定提交恢复被删除的分支git fsck --lost-found查找悬空对象dangling commitsgit merge lost-commit-hash合并找回的提交到当前分支远程仓库误操作处理git push -f origin commit-hash:branch谨慎使用强制推送恢复远程分支git push origin --delete branch后立即创建同名分支可恢复部分平台如GitHub的误删分支数据彻底丢失的预防措施定期使用git bundle创建备份包配置gc.pruneExpire30 days延长垃圾回收保留期重要分支设置保护规则protected branches高级恢复工具git cherry-pick抢救特定提交git stash apply恢复暂存区的未提交内容第三方工具如GitKraken的提交图谱可视化恢复最佳实践总结操作前使用git status确认当前状态危险操作前创建临时分支备份团队协作时避免强制推送主分支建立代码审查流程减少人为失误
Git急救手册:误操作全攻略
Git误操作急救手册大纲常见误操作场景分类文件误删、提交信息错误、分支操作失误、远程仓库覆盖、硬重置hard reset导致代码丢失撤销本地未提交的更改git checkout -- file丢弃单个文件的修改git restore fileGit 2.23恢复文件到上次提交状态git clean -df删除未跟踪的文件和目录修复已提交但未推送的错误git commit --amend修改最后一次提交信息或内容git reset --soft HEAD~1撤销提交但保留更改在工作区git revert HEAD创建反向提交来撤销更改适合已推送的情况分支操作恢复git reflog查看所有分支操作历史记录git checkout -b new-branch commit-hash通过reflog找到丢失的提交重建分支git branch -f branch-name commit-hash强制分支指向特定提交恢复被删除的分支git fsck --lost-found查找悬空对象dangling commitsgit merge lost-commit-hash合并找回的提交到当前分支远程仓库误操作处理git push -f origin commit-hash:branch谨慎使用强制推送恢复远程分支git push origin --delete branch后立即创建同名分支可恢复部分平台如GitHub的误删分支数据彻底丢失的预防措施定期使用git bundle创建备份包配置gc.pruneExpire30 days延长垃圾回收保留期重要分支设置保护规则protected branches高级恢复工具git cherry-pick抢救特定提交git stash apply恢复暂存区的未提交内容第三方工具如GitKraken的提交图谱可视化恢复最佳实践总结操作前使用git status确认当前状态危险操作前创建临时分支备份团队协作时避免强制推送主分支建立代码审查流程减少人为失误