SuperAPI AI 工具集

rebase-safely

通用与其它

查看项目

更新于 10-15 23:49

技能介绍

用途:在 Git 分支变基时提供安全操作指引,覆盖更新功能分支、清理提交历史、压缩提交、重排或编辑提交、修改提交信息等场景。核心原则是绝不 rebase 已推送到共享分支的提交,因为变基会重写历史,可能给协作者造成冲突与混乱。

主要能力:基本操作包括 git fetch origin、git checkout feature-branch、git rebase origin/main,冲突时用 git add 与 git rebase --continue,推送自己的分支用 git push --force-with-lease。交互式变基 git rebase -i HEAD~3 或 git rebase -i main 支持 pick、reword、edit、squash、fixup、drop 等指令,可压缩、重排、编辑、拆分提交或修改提交信息。

冲突与恢复:用 git status 查看冲突文件,解决后 git add 并继续,必要时 git rebase --abort 中止;可用 git show HEAD:<file> 与 git show REBASE_HEAD:<file> 对比版本,或 git mergetool。恢复误操作可用 git reflog 找到 rebase 前状态,或 git reset --hard ORIG_HEAD。

安全流程:开始前创建备份分支 git branch backup-feature-branch 并确保工作区干净;结束后用 git diff backup-feature-branch feature-branch 核对,确认无误再删除备份。还介绍 autosquash 与 git commit --fixup=<commit> 的配合。

限制与注意:不要 rebase main/develop、共享功能分支或已合并提交;避免使用 --force,改用 --force-with-lease;不要一次 rebase 过大范围;处理合并提交较复杂,建议使用 --rebase-merges。资料未提供该技能的安装方式、平台支持或收费信息。