十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Git Worktrees 并行开发:Superpowers 用三个机制自动搭好隔离工作区

Git Worktrees 并行开发:Superpowers 用三个机制自动搭好隔离工作区 Git Worktrees 并行开发Superpowers 用三个机制自动搭好隔离工作区【免费下载链接】superpowersAn agentic skills framework software development methodology that works.项目地址: https://gitcode.com/GitHub_Trending/su/superpowers同时赶两个需求、手上还压着一个线上 bug最怕的就是切分支。Superpowers 基于 Git Worktrees 做了一套并行开发分支管理流程每个功能分支一个独立工作目录多分支同时开发互不干扰目录、依赖、测试全自动化。一个仓库开三份活为什么值得传统做法是一个仓库对应一个工作目录切分支就是同一棵树换一块内容没提交的东西要 stash换完分支依赖可能得重装两个功能碰同一份依赖版本时干脆互相卡死。git worktree 是 Git 的原生能力多个工作目录共享同一个 .git每个目录钉在一个分支上文件层面完全隔离。落到分支管理上意味着——三个功能各占一个目录切换靠切终端分支状态不再靠脑子记。Superpowers 的 skills/using-git-worktrees 技能把建 worktree从一串手工命令变成了固定流程先检测、再创建、装依赖、验证基线全过才把工作区交给你。三道自动闸门堵住最常翻车的点忘了写 gitignore先查再建缺了自动补用 worktree 的第一个常见事故工作目录没进 .gitignore结果整棵工作树的内容被 git 跟踪等人发现时 git status 已经满屏 .worktrees。技能在创建前会先执行 git check-ignore 验证目录没被忽略就先写进 .gitignore 并提交再进入创建步骤。这意味着这类事故不用再靠事后翻 git log 排查仓库状态从头到尾是干净的。工作目录放哪三条优先级不用你拍板目录位置最容易出现这次建这儿、下次建那儿的混乱。它的规则按优先级排一、你在 CLAUDE.md 等说明文件里明确写过的 worktree 目录偏好直接照办二、项目里已存在的 .worktrees 或 worktrees 目录两者都有时优先 .worktrees三、都没有就默认放项目根的 .worktrees/。这意味着每开一个新分支不用再问这目录建哪儿同一项目的多个工作区永远长在一个地方。创建前还有一步容易漏的预检对比 git rev-parse --git-dir 和 --git-common-dir如果已经身处某个关联工作树直接复用绝不在工作树里再套一层子模块造成的看起来像 worktree的假象也会被排除。这意味着哪怕流程由 AI 无人值守地跑也不会出现 worktree 套 worktree 或者把子模块误当成工作区。开工前先确认没在带病起跑工作区建好之后它会按项目类型自动装依赖有 package.json 跑 npm install有 Cargo.toml 跑 cargo build有 requirements.txt 或 pyproject.toml 走 pip 或 poetry有 go.mod 跑 go mod download。随后跑一遍完整测试套件作为基线——基线红了就列失败清单并问你是否继续不会闷头开工。这意味着之后跑到一半测试挂了你能立刻分清是新写的代码引入的 bug还是本来就存在的问题。这个判断往往决定了你是十分钟修完还是回溯半天。实际跑起来的样子完整流程是检测是否已隔离 →没有时优先用平台自带的工作树工具如 EnterWorktree 之类没有才退回 git worktree add → 装依赖 → 基线测试。真正落到命令上就是几行git check-ignore -q .worktrees || echo .worktrees/ .gitignore # 没被忽略先补 git worktree add .worktrees/auth -b feature/auth cd .worktrees/auth npm install npm test # 装依赖 基线测试跑完你收到的是一段三行汇报工作树路径、通过的测试数、准备开发哪个功能。命令不用你背看到 Worktree ready 和 Tests passing 两行就够了。收尾合并、提 PR还是先搁着功能做完交给 finishing-a-development-branch 技能。它先重跑完整测试套件绿了才出选项① 本地合并回基线分支——合并结果再跑一遍测试绿了才清理工作树、删分支② 推分支开 PR——工作树保留着PR 反馈就在这个目录里改③ 原样保留之后你自己处理。清理也有边界它只删自己建的工作树.worktrees/ 或 worktrees/ 下的宿主环境创建的工作区一律不动丢弃分支必须经你明确确认它不会自作主张。git worktree remove .worktrees/auth git worktree prune怎么装到项目里git clone https://gitcode.com/GitHub_Trending/su/superpowers技能定义在 skills/ 目录下如 skills/using-git-worktrees/SKILL.md、skills/finishing-a-development-branch/SKILL.md。加载后它能和 brainstorming、executing-plans、subagent-driven-development 等技能串成完整链路——开工时 worktree 的搭建会自动触发不用你手动切流程。下次开功能分支时先让 Superpowers 把 worktree 搭好跟它说用 using-git-worktrees 给我建个隔离工作区等它报出 Worktree ready 和 Tests passing 再写第一行代码。切回主线就不再是让你害怕的那个时刻了。【免费下载链接】superpowersAn agentic skills framework software development methodology that works.项目地址: https://gitcode.com/GitHub_Trending/su/superpowers创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表