OK so I've grappled git's sparse checkout and won (for now).  I can use it
to subset the checkout (not clone) and make Maven3 do a reduced build graph
without using profiles.

Details:
https://github.com/paul-hammant/maven-monorepo-experiment/tree/trick-maven-monorepo
details

Google has 86 TB of history in their trunk, and you could't use Git for
that for many reasons, but we' are a couple of inches closer for Maven now.

- Paul

On Tue, Jan 24, 2017 at 10:44 PM, Paul Hammant <p...@hammant.org> wrote:

> OK, take a look at https://github.com/paul-hammant/maven-monorepo-
> experiment/compare/trick-maven-monorepo
>
> Branch 1 - vanilla-recursive
> <https://github.com/paul-hammant/maven-monorepo-experiment> is a branch
> with HazelCast's core and samples checked in - a 14 minute build IF YOU
> SKIP TESTS AND YOU ALREADY HAD CACHED DEPS !!.
>
> Branch 2 - pom.xml files renamed to pom-template.xml and some shell/python
> fu to recreate pom.xml files (read-only, .gitignore'd) obeying the
> directory structure, and excluding <module/> lines where the directory is
> missing.
>
> See https://github.com/paul-hammant/maven-monorepo-
> experiment/blob/trick-maven-monorepo/README.md
>
> That's enough for one night - more tomorrow. I get to find out whether
> Git's sparse-checkout is elegant or a mess. At least for my use case.
>
> - Paul
>

Reply via email to