Skip to main content

Third-party tools

Tools outside Git that also keep a library in a monorepo folder, or move changes between a monorepo and other repositories. The pages run on the same library and monorepo as git submodule and git subtree. A page that runs the tool prints its version.

How it compares​

ToolWhat is similarKey difference
git-subrepoIt has a committed state file, fetches by URL and pulls as one commit.It stores a monorepo commit that rebases and squash merges can invalidate, and fixes each folder to one upstream branch. (in depth)
JoshIt exposes part of a monorepo as a repository, and a push sends the same commits, unless they're signed or have other extra headers.The monorepo has to hold copies of the library's whole history, since its filtered view meets the library at shared commits; a pull adds a commit for each upstream commit. (in depth)
splitsh-liteIt publishes folders as repositories.It creates read-only mirrors; changes only flow out.
CopybaraIt moves changes between repositories.One repository is the source of truth; syncing back needs a separate reverse workflow (in depth).