SuperAPI AI 工具集

loom-git-workflow

办公与效率

查看项目

更新于 10-15 20:28

技能介绍

用途:为 Git 日常操作提供规范与决策依据,目标是保持干净、可二分查找(bisectable)的历史并安全协作。它是提交卫生与 Conventional Commits 的规范来源,被代码审查与重构相关技能引用。

主要能力:

  1. 提交规范:格式为 type(scope): description,类型含 feat、fix、docs、refactor、test、chore(以及 perf、build、ci、style);用 ! 或 BREAKING CHANGE: 页脚标记不兼容变更。要求原子提交,每个提交自身可构建并通过测试;重构与行为变更分开提交;消息写清 what 与 why,how 由 diff 体现。
  2. 变基与合并选择:更新本地私有分支用 rebase 保持线性;将已审查功能合入 main 用 merge(常加 --no-ff);已推送且他人已拉取的分支必须用 merge 而非 rebase。交互式变基 git rebase -i origin/main 可 squash/reword/fixup,配合 git commit --fixup=<sha> 与 --autosquash。
  3. 冲突解决:用 git status、git diff 查看冲突,理解双方意图后解决,git add 标记已解决,并务必重新运行测试,因为无文本冲突不等于语义正确;可用 git merge --abort 放弃。注意 --ours/--theirs 在 rebase 与 merge 下含义相反。
  4. rerere:git config --global rerere.enabled true 记录并自动重放相同冲突的解决方式,适合长期分支反复变基或合并。
  5. worktree:git worktree add/list/remove/prune 支持多工作目录共享同一 .git,实现并行分支而无需 stash 或切换;同一分支不能在两个 worktree 中检出,脏工作树无法 remove。
  6. 恢复与排查:git reflog 找回 reset/rebase/删分支丢失的提交;reset 的 --soft/--mixed/--hard 区别;git revert 在共享历史上安全;git bisect 配合 git bisect run ./test.sh 自动定位引入缺陷的提交。

关键限制与注意事项:绝不重写他人已基于其工作的历史;仅对自己的功能分支强制推送,且优先 --force-with-lease;绝不强推 main/master/release/*。reset --hard 与 checkout -- <file> 会无 reflog 记录地丢弃未提交工作;git clean -fd 不可逆,先 git clean -n。pull 默认 merge 会产生噪音提交,可用 git pull --rebase(仅限未共享分支)。cherry-pick 会生成新 sha,跨分支后合并易产生“已应用”冲突。commit --amend 仅在未推送时安全。

使用方式:作为技能在涉及 Git 操作时调用,按上述规则执行并在完成前核对:共享分支无历史重写、强制推送仅限自有分支且用 --force-with-lease、提交原子且符合规范、每次冲突解决后跑测试、暂存具体文件而非 git add -A/.。

适用场景:分支管理、提交整理、合并与变基决策、冲突处理、并行工作树、历史恢复与缺陷定位。具体安装命令与平台支持信息暂未提供。