git-worktree

Solid

Git worktree 生命周期管理 skill(用户级通用)。触发后弹出菜单,支持:新建 worktree、把当前 worktree 合并到主干、把主干同步到所有 worktree、清理当前 worktree。主干分支名与 worktree 命名前缀均运行时自动探测,不绑定具体项目。触发词:创建 worktree、新建 worktree、worktree 合并、合并到主干、主干同步、同步所有 worktree、清理 worktree、git worktree、worktree 管理。

Code & Development 3 stars 0 forks Updated today Apache-2.0

Install

View on GitHub

Quality Score: 79/100

Stars 20%
20
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# git-worktree 多 worktree 并行开发管理工具。主仓库当前 checkout 的分支即**主干分支**,是唯一主干,所有 worktree 的改动最终合并回主干。worktree 与任何总控/任务体系**解绑**——同一 worktree 可承载多个任务,若项目启用了 `control` skill,通过 `/control switch` 切换。 ## 约定探测(所有操作的公共前置) ```bash # 主仓库路径 = git worktree list 的第一行(git 保证主仓库永远排第一) MAIN_ROOT=$(git worktree list | head -1 | awk '{print $1}') # 主干分支 = 主仓库当前 checkout 的分支 TRUNK_BRANCH=$(git -C "$MAIN_ROOT" branch --show-current) # worktree 目录命名前缀 = 主仓库目录名 REPO_NAME=$(basename "$MAIN_ROOT") PARENT_DIR=$(dirname "$MAIN_ROOT") # 布局探测:主仓库目录名 == 主干分支名(容器目录布局,如 ~/projects/myrepo/main)→ worktree 不带前缀 if [ "$REPO_NAME" = "$TRUNK_BRANCH" ]; then WT_PREFIX="" # 容器布局:worktree 目录 = PARENT_DIR/{名称} else WT_PREFIX="$REPO_NAME-" # 传统布局:worktree 目录 = PARENT_DIR/{REPO_NAME}-{名称} fi ``` > 若 `TRUNK_BRANCH` 探测为空(主仓库处于 detached HEAD),停下询问用户主干分支名,不猜测。 ## 合并原则(所有涉及合并的操作均遵守) 1. 先提交**源分支**的未提交改动 2. 再提交**目标分支**的未提交改动 3. 执行 merge 4. 遇到冲突直接解决,不 stash、不建中间分支 --- ## 触发入口(强制) skill 被调用后,**第一步必须**用 `AskUserQuestion` 询问用户选择操作: 问题:**你想执行哪个 worktree 操作?** 选项: - **新建 worktree**:从主干拉出新分支,在兄弟目录创建 worktree - **合并到主干**:把当前 worktree commit 并 merge 到主干(完工时用) - **主干同步到所有 worktree**:把主干 merge 进每个 feature worktree(重大改动时用) - **清理当前 worktree**:验证已全部合并到主干后删除 worktree 和分支 根据用户选择跳到对应 §。 --- ## §A. 新建 worktree **输入**:向用户询问英文任务名(如 `poster-render`、`user-finetune`) **命名规则**: - 目录名:`{WT_PREFIX}{名称}`(传统布局为 `{REPO_NAME}-{名称}`,容器布局直接 `{名称}`,探测逻辑见「约定探测」) - 路径:主仓库的**兄弟目录**(`PARENT_DIR/{WT_PREFIX}{名称}`) - 分支:`feature/{名...

Details

Author
BackToCimaCoppi
Repository
BackToCimaCoppi/Praxis
Created
1 months ago
Last Updated
today
Language
Python
License
Apache-2.0

Similar Skills

Semantically similar based on skill content — not just same category

Data & Documents Listed

worktree

由用户主动调用,用于多功能并行开发

2 Updated today
beixiyo
AI & Automation Listed

worktree-discipline

cc-master 仓库自用的 git worktree 隔离纪律——Solo(单任务单 worktree)与 Fan-out(多 worktree 并行)两种操作模式 + 一组防止并行开发污染 main checkout 或彼此的红线。何时用 / Use when:(1) 开始一段需要与 main checkout 隔离的实现工作、动第一次文件编辑之前;(2) 把并行实现 fan-out 到多个 worktree;(3) 决定这场并行怎么收口(各自 feature-branch PR vs HUB 集成分支合并回);(4) 一次 merge / PR 落地后的清理墙、开下一个 PR 之前;(5) 给一个将在 worktree 内工作的 sub-agent 写派发 prompt;(6) 作为 master orchestrator dogfood 本仓、fan-out 后台 worker 之前先立起隔离拓扑。Triggers: worktree、隔离、fan-out、并行改文件、cd 进哪个树、main 被污染、清理残留 worktree、spoke 该不该 commit。Do NOT use when:把目标切成任务 DAG / 排 wave(那是 slicing-goals-into-dags + master-orchestrator-guide 的 decomposition),worktree 内的 TDD / 测量循环(dev-as-ml-loop / engineering-with-craft),或 PR 创建与 merge 机制(AGENTS.md §11 的 gh 手工流——本仓没有 github-pr skill)。

7 Updated today
nemori-ai
AI & Automation Listed

worktree

创建 Git worktree 用于隔离开发新功能或修复 bug。 自动处理分支创建、worktree 设置、目录切换和开发环境初始化。

0 Updated 6 days ago
l8ai-cn