Git误操作急救手册大纲

常见误操作场景
  • 误删本地分支或文件
  • 误提交(如提交敏感信息或错误内容)
  • 误强制推送(覆盖远程分支)
  • 误合并或变基导致冲突或历史混乱
数据恢复方法
  • 恢复未暂存的修改:git checkout -- <file>
  • 恢复已暂存但未提交的修改:git reset HEAD <file>
  • 恢复已提交的修改:git reflog + git reset --hard <commit>
撤销提交操作
  • 撤销最近一次提交(保留修改):git reset HEAD~1
  • 彻底删除最近提交(不保留修改):git reset --hard HEAD~1
  • 修改提交信息:git commit --amend
分支与合并修复
  • 恢复误删分支:git reflog + git checkout -b <branch> <commit>
  • 撤销合并:git merge --abort(合并中)或 git reset --hard <commit>(已合并)
  • 撤销变基:git rebase --abort(变基中)或 git reflog 回退
远程仓库修复
  • 恢复误强制推送的远程分支:
    • 本地回退到正确提交:git reset --hard <commit>
    • 强制推送正确历史:git push -f origin <branch>
预防措施与最佳实践
  • 定期备份重要分支(如推送到远程或打标签)
  • 使用 git stash 临时保存未完成修改
  • 谨慎使用 --force--hard 选项
  • 通过 git diffgit log 确认操作内容
工具与扩展
  • 图形化工具(如 GitKraken、SourceTree)辅助回退
  • 脚本自动化备份关键操作
附录:常用命令速查表
  • git reflog:查看操作历史
  • git fsck:检查仓库完整性
  • git cherry-pick:选择性恢复提交


 

Logo

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

更多推荐