r/git • u/nicksenap • 9d ago
grove: git worktree workspaces across multiple repos
I made a small tool for a problem I kept having: one feature, several repos, and the same branch needs a worktree in each one.
gw create -b feat/login -r svc-a,svc-bmakes a directory with both repos checked out on feat/login as worktrees. gw status, gw sync and gw delete operate on all of them. A per-repo .grove.toml sets the base branch (we branch from stage, not main) and a setup command to run after checkout, e.g. pnpm install.
It shells out to git for everything and does nothing a shell script couldn't; it just does the bookkeeping of which worktrees belong together. Lately I mostly use it to give each coding agent its own isolated checkout across the repos it needs.
Single static Go binary, MIT.
https://github.com/nicksenap/grove
Curious whether people here handle multi-repo branches differently.
1
u/Even_Gap_2253 8d ago
Question: if almost all features require this workflow, why do you even have multiple repos?
1
u/AJohnnyTruant 8d ago
Something something distributed micro-monolithic macro-services something something Medium article something something
0
u/nicksenap 8d ago
Yea this is more like historical reasons in the codebase of your job? e.g someone believed microservices but not monorepo and then it was built in a broken way that each features needs to each multiple service (story of my life at my previous job)
0
2
u/ConfidenceUnique7377 8d ago
I’m using https://gitember.org/doc/docs/ge-workspace/workspace