Skip to main content

8 posts tagged with "Git"

View All Tags
· 6 min read

Git submodule 是 Git 原生的多仓库嵌套机制,父仓库只记 commit hash,不存文件内容。

  1. 是什么:主仓库子目录里嵌入独立 Git 仓库,各自有 commit 历史
  2. 三个核心命令submodule add / init + update / update --remote
  3. 典型场景:第三方库源码嵌入、独立发布周期的子项目
  4. 致命坑 1新 clone 是空目录,必须 init + update 才有内容
  5. 致命坑 2:子模块默认 detached HEAD,commit 容易推不上去
  6. 致命坑 3:主仓库切分支后忘了 update --remote,代码对不上
  7. 替代方案:monorepo 处理强耦合,subtree 处理简单嵌入
· 5 min read

git worktree 让多分支并行工作,一个目录 = 一个分支

  • 核心机制:所有 worktree 共享一个 .git 数据库
  • 典型场景:边修 bug 边开发 feature,不切分支
  • code review:独立目录看 PR,不打断当前工作
  • 跑长任务:CI、build 不阻塞主工作区
  • superpowers 模式一个 worktree 一个 agent,并行的关键
  • 使用注意同一分支只能被一个 worktree checkout
  • 清理规则:删目录不够,必须 git worktree remove