SuperAPI AI 工具集

git-recovery

通用与其它

查看项目

更新于 10-16 04:30

技能介绍

用途:教 AI 代理安全使用 Git,并在误操作后尽量不丢工作地恢复。核心原则包括:Git 很少真正删除内容,多数可用 reflog 找回;执行 --hard、--force 前先理解其后果;高风险操作前先备份;共享分支上用 revert 而非 reset。

主要能力:解释 reflog 作为“撤销历史”,记录每次 HEAD 移动,默认保留可达提交 90 天、不可达 30 天,可通过 gc.reflogExpire 配置;说明可恢复(近期删除的分支、reset 掉的提交、amend 前的原提交、rebase 前的原提交、丢弃的 stash)与不可恢复(从未提交的未暂存改动、从未 add 的未跟踪文件、超过保留期的提交、被 git clean -f 删除的文件)的情形。覆盖常见错误:误删分支、reset 过头、提交到错误分支、amend 错提交、rebase 丢提交、force push 覆盖远端、误丢暂存改动,并给出对应对策。

必要用法:查看安全网 git reflog;恢复分支 git switch -c <branch> <commit-hash>;撤销提交保留改动 git reset --soft HEAD~1;完全丢弃 git reset --hard HEAD~1(仍可从 reflog 找回);共享分支撤销 git revert <commit>;回退合并 git revert -m 1 <hash>;找回文件 git log --all --full-history -- <file> 与 git restore --source=<commit> <file>;恢复 stash git stash apply <stash-hash>。

适用场景与限制:适合本地与团队仓库的事故排查和恢复;reflog 是本地记录,未必反映远端状态;未提交且未暂存的改动、被 clean 删除的未跟踪文件通常无法用 Git 恢复,只能依赖编辑器自动保存、系统回收站或文件恢复工具;资料未提供具体收费、平台或安装方式。