Now I have found out that GitHub has submodules. This does not introduce an
intermediate path in URL but it would introduce a kind of groupper repo
folder. For instance maven-clean-plugin would be submodule inside repo
maven-plugins.
References:
https://stackoverflow.com/questions/35043733/how-do-i-create-nested-repositories-in-github

Example from stackoveflow:
https://github.com/laristra/cinch-nested-example/
See the definition of submodules
https://github.com/laristra/cinch-nested-example/blob/master/.gitmodules
which results in repos:
https://github.com/laristra/cinch-example/
https://github.com/laristra/cinch

I think GitHub does not provide us with better solutions.

On Sun, Oct 8, 2017 at 12:49 PM, Hervé BOUTEMY <herve.bout...@free.fr>
wrote:

> I fear this is not an option today, but ideally, that would be a perfectly
> visible grouping
>
> we need to find another way of grouping, for people who do care about Maven
> general structure: people who just work on an artifact just don't care
> and they don't care that git repos are flat even at Apache level: Apache
> level
> just enforce grouping via repo name prefix
> http://git.apache.org/
>
> currently, I hope that our "full Maven source code clone" implementation
> would
> make the Maven code structure grouping visible
> if we implement it as a shell script, that's only a few mkdirs: but I'm not
> convinced by shell script implementation, since cloning is one command,
> but we
> need also to be able to fetch and pull
>
> Regards,
>
> Hervé
>
> Le dimanche 8 octobre 2017, 12:21:54 CEST Tibor Digana a écrit :
> > Would we need to have the URLs like these?
> > github/apache/***/repo
> > https://github.com/apache/*maven-plugins*/maven-clean-plugin/
> > https://github.com/apache/*maven-shared*/maven-shared-utils/
> >
> > On Sun, Oct 8, 2017 at 4:55 AM, Hervé BOUTEMY <herve.bout...@free.fr>
> wrote:
> > > TLDR; =
> > > Perhaps we can start with 2 proofs of concept:
> > > 1. full git clone + Jenkins jobs for the 7 existing git repos (with 6
> > > additional ones in 2 days)
> > > 2. git split of one of the aggregator svn trunk: skins or doxia-tools
> can
> > > be
> > > easy choices since they are light, where plugins or shared are perhaps
> too
> > > heavy. The one working on this PoC will make his choice
> > >
> > > then more detailed answer inline that lead to this PoCs proposal
> > >
> > > Regards,
> > >
> > > Hervé
> > >
> > > Le dimanche 8 octobre 2017, 00:02:10 CEST Tibor Digana a écrit :
> > > > I don't think the devs would work on all artifacts(projects) a time.
> > >
> > > sure, I think I'm one of the few people working on near everything
> (with
> > > rare
> > > exceptions like Surefire, as you noticed :) )
> > > but for usual contributor, there is no issue
> > >
> > > I'm not a git expert, then I don't know if easy "full Maven clone" is
> > > better
> > > done with a shell script or some git modules
> > >
> > > > If the naming convention of repo for a plugin would be artifactId,
> like
> > > > /maven-clean-plugin, then even easy to figure out which one to clone.
> > > > The most likely the dev would just clone one repo she/he is
> interested
> > > > in
> > > > at the moment, i.e. repository /maven-clean-plugin, let's say.
> > > > It's good to avoid any shared files across them, even I don't think
> devs
> > > > share some in svn today. The release process would be quite usual,
> i.e.
> > >
> > > one
> > >
> > > > repo = one project, and new devs already have these experiences which
> > >
> > > will
> > >
> > > > be simple for them to adapt faster.
> > >
> > > +1
> > > the only drawback I see currently is that there is no natural grouping,
> > > then
> > > we have a flat lit of near 100 git repos without the current structure
> > > (plugins, shared components, skins, ...): I think components structure
> is
> > > useful for maintenability
> > > but not really a complete showstopper
> > > and perhaps the "Maven full clone" tooling can re-create some grouping
> to
> > > keep
> > > visible structure
> > >
> > > Now, someone has to know how to create per-component git repo with tags
> > > (either by reworking exiting git mirrors, either by restarting from
> svn),
> > > and
> > > that's not me :)
> > >
> > > given the volume (adding 70 git repos for Maven), we'll have to tell
> infra
> > > about it.
> > >
> > > Then there is the Jenkins jobs configuration:
> > > - we need easy Jenkinsfile in each repo
> > > - we need easy 80 jobs creation (no, I won't manually create 80 jobs
> > > personally)
> > > And once again, infra will have to be in the loop (at Jenkins side this
> > > time),
> > > since I fear the load on Jenkins master node won't be light: perhaps
> > > that's
> > > where Jenkins folders will be useful, but I'm not a Jenkins expert
> either.
> > >
> > >
> > > If everything seems feasible to split our svn code into 1 git repo per-
> > > component, which will bring us to "full Maven code" being near 100
> repos,
> > > I'm
> > > ok with it.
> > > We'll need the help of misc experts on Jenkins and git to prepare
> things
> > > at
> > > this scale.
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > > For additional commands, e-mail: dev-h...@maven.apache.org
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>
>

Reply via email to