Git误操作急救手册大纲
·
Git误操作急救手册大纲
常见误操作场景分类
- 工作区文件误删或修改丢失
- 暂存区(add)后需要撤销
- 提交(commit)后需要回退
- 分支误删或错误合并
- 远程仓库误推送
工作区文件恢复
git checkout -- <file> 丢弃工作区修改 git restore <file> (Git 2.23+)恢复文件 git clean -fd 清除未跟踪文件
暂存区操作撤销
git reset HEAD <file> 取消暂存 git restore --staged <file> (Git 2.23+)
提交历史修改
git commit --amend 修改最近提交 git reset --soft HEAD~1 保留更改回退提交 git reset --hard HEAD~1 彻底回退提交
分支恢复
git reflog 查看所有操作记录 git branch <branch> <commit-hash> 根据reflog恢复分支 git fsck --lost-found 查找悬空对象
远程仓库修复
git push origin --delete <branch> 删除远程分支 git push -f origin <branch> 强制推送(谨慎使用)
数据恢复高级技巧
git cherry-pick <commit> 抢救特定提交 git stash apply 恢复暂存内容 git log -g 查看引用日志
预防措施
- 频繁提交小改动
- 重要分支设置保护
- 使用.gitignore文件
- 定期推送备份
注意事项
- 强制推送可能影响协作
- 硬重置会永久删除数据
- 操作前建议备份仓库
- 复杂情况考虑克隆新仓库
更多推荐
所有评论(0)