Git 工作树集成
Git Worktree Integration
深度集成 git worktree,通过 hooks 自动同步 Dolt 数据,支持多分支并行开发
子问题
1.worktree 数据隔离
2.git hooks 自动同步
3.分支切换处理
4.合并冲突解决
5.Redirect 文件相对路径解析(从 worktree 根目录而非 .beads 目录)
6.GIT_DIR/GIT_WORK_TREE 环境变量显式设置(防止继承 worktree 上下文)
各项目的解法1 solutions
Signals
横向对比
| 维度 | beads |
|---|---|
| 数据隔离策略 | Redirect 文件实现共享数据库,避免多副本不一致 |
| Worktree 检测 | git rev-parse --git-common-dir 比较,单次调用缓存结果 |
| Hooks 管理 | 安装到 common dir,所有 worktree 自动共享 |
| 路径解析 | 显式设置 GIT_DIR/GIT_WORK_TREE 环境变量,防止继承错误上下文 |
| 安全检查 | 删除前检查 uncommitted changes 和 unpushed commits |
最佳实践
1.post-commit hook 自动同步
2.post-merge hook 处理合并
3.独立 Dolt 数据库实例
4.hash ID 避免冲突
5.使用 sync.Once 缓存 git rev-parse 结果,避免重复调用
6.Redirect 文件优先使用相对路径,便于仓库移动
7.Hooks 脚本内嵌 worktree 检测逻辑,自动定位主仓库数据目录