github / github/gh-stack

Github stack does not persist across worktrees

未关闭
#459 1 条评论 8 个 reaction 已指派 0 人 在 GitHub 查看
bug topic: cli - worktrees
主要语言
Go
星标
1.5k
派生
70
平均合并
1 天 8 小时
30 天内合并 PR
7

描述

When opening a branch in a worktree and running `gh stack init`, it does not keep track of the stack locally. `gh-stack` keeps stack membership in local state tied to the checkout where `init` ran. If I create a worktree & use `gh-stack`, the stack doesn't persist on my machine, even if I open the branch back in my main worktree. Inside a worktree, $GIT_DIR is .git/worktrees// — so `worktree remove` deletes the stack state with it

This is confusing & not obvious. Additionally, a modern LLM workflow may involve different sub-agents in different worktrees. This makes gh-stack worse than, say git-spice for this purpose, since I can't easily update my work if I checkout the branch on my main worktree.

The stack _is_ stored remotely on Github, but THAT doesn't always work - seems like GitHub only records a stack for a chain of two or more PRs.

贡献指南

打开贡献指南

调研方向

从 `gh stack init` 入口开始,跟踪当 `$GIT_DIR` 指向 `.git/worktrees//` 时本地 stack 成员关系的存储方式。在主 worktree 和关联 worktree 之间复现该行为,包括 `worktree remove`;当从另一个 worktree 打开该分支时,stack 成员关系仍然可用,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
git, github, go
领域
cli, tooling
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
活跃
描述清晰度
基本清楚
新手友好度
52/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。