Re:Josh: Get the advantages of a monorepo with multirepo setups
by tazjin on Thursday July 15, 2021 @10:52AM
(#27845446)
It can not - josh can do many arbitrary kinds of (reversible) transformations on the repo, which allows you to have different external "projections" of your monorepo.
Imagine a company that develops strongly interdependent software in a monorepo, but needs to publish different subsets of this software to external entities which also expect a coherent version history.
Re:Josh: Get the advantages of a monorepo with multirepo setups
by mugsie on Thursday July 15, 2021 @10:55AM
(#27845487)
git filter-branch would fit this use case?
Re:Josh: Get the advantages of a monorepo with multirepo setups
by chrschilling on Thursday July 15, 2021 @01:06PM
(#27846999)
On a basic level, yes, both Josh and git filter-branch do essentially the same thing. The difference being that Josh is much faster not just compared to git filter-branch but also compared to all the other similar tools out there, especially when run repeatedly in the same repo.
Also being a server it does not require any installation or resources on the developers machine.
In addition to that over time more features where added that git-filter branch does not have, most notably "josh workspaces" which is a DSL for repo transformations.
I’m currently using a monorepo with submodules and it works really well.
Dependency management is not a huge issue too, at least if you don’t have hundreds of submodules.