SuperAPI AI 工具集

git-advanced-workflows

办公与效率

查看项目

更新于 10-16 06:47

技能介绍

用途:帮助开发者维护清晰的 Git 提交历史、高效协作,并在出现误删提交、误 reset 等情况时恢复。适合合并前清理历史、跨分支移植提交、排查缺陷引入点、同时开发多个功能与准备干净的 PR。

主要能力:

  1. 交互式 rebase:支持 pick、reword、edit、squash、fixup、drop,可清理、合并、重排提交。常用命令 git rebase -i HEAD~5、git rebase -i $(git merge-base HEAD main)。
  2. Cherry-pick:把指定提交应用到其他分支,如 git cherry-pick abc123、git cherry-pick abc123..def456、git cherry-pick -n abc123、git cherry-pick -e abc123。
  3. Bisect:二分查找引入缺陷的提交,git bisect start、git bisect bad、git bisect good v1.0.0,可用 git bisect run ./test.sh 自动化;脚本对正常提交返回 0,对异常返回 1 至 127(125 除外)。
  4. Worktree:同一仓库多分支并行工作,git worktree add ../project-feature feature/new-feature、git worktree list、git worktree remove、git worktree prune。
  5. Reflog:追踪引用变动,恢复被删提交或分支,如 git reflog 后用 git branch recovered-branch abc123 恢复。

正文另给出清理 PR 分支、热修复多发布分支、定位缺陷、多分支开发、误操作恢复等实操流程,以及 autosquash、拆分提交、部分 cherry-pick 等进阶技巧。

必要用法与限制:重写历史后建议用 git push --force-with-lease;只对本地未共享的提交做 rebase;操作前可 git branch backup-branch 备份;冲突用 git rebase --continue 或 --abort 处理;中断操作可用 git rebase --abort、merge --abort、cherry-pick --abort、bisect reset。reflog 通常保留约 90 天。资料未提供该技能的具体安装方式、收费与平台信息。