Contributors mailing list archives


Re: One module one repo

- 19/06/2019 03:36:16
I LOVE the idea!

I have used git subrepo, too. It got a bit complicated after a while. I figure with one repo one module, there is not even a need for it.

To separate it, I already made that demo, with full history preserved:

Done with git subrepo ;-)

After that transition, using git submodules is just very fine. Stock git.

El mar., 18 jun. 2019, 8:32 p.m., Jose R. Prieto <> escribió:
I suggest use git subrepo

I worked with it from a about two years, without problems.

And we can have the current "project repositories" as a "meta repository" for specific subject, and inside it, one module with one individual repo (and isolated); and we will can choice between use the meta repository, or the individual; both for dev and deploy.

I can make a very simple "demo", if you like the idea..



Simple notes about git subrepo and use:

Git subrepo use.

Install (recomended method):

~$ git clone /path/to/git-subrepo

~$ echo 'source /path/to/git-subrepo/.rc' >> ~/.bashrc

Add a repository as a subrepo in a subdir of your repository:

~$ git subrepo clone <repository> [<subdir>] [-b <upstream-branch>] [-f]

Turn an existing subdirectory into a subrepo:

~$ git subrepo init <subdir> [-r <remote>] [-b <branch>]

Update the subrepo subdir with the latest upstream changes:

~$ git subrepo pull <subdir>|--all [-b <branch>] [-r <remote>] [-u]

Push a properly merged subrepo branch back upstream:

~$ git subrepo push <subdir>|--all [<branch>] [-r <remote>] [-b <branch>] [-u]

Fetch the remote/upstream content for a subrepo.:

~$ git subrepo fetch <subdir>|--all

Create a branch with local subrepo commits:

~$ git subrepo branch <subdir>|--all

Add subrepo branch to current history as a single commit:

~$ git subrepo commit <subdir> [<subrepo-ref>]

This "plumbing" command finds a common ancestor between two branches. It will look at the referenced tree hash in the commits to see if it can locate a common one:

~$ git subrepo merge-base <branch1> <branch2>

Get the status of a subrepo. Uses the --all option by default. If the -- quiet flag is used, just print the subrepo names, one per line:

~$ git subrepo status [<subdir>]

Remove artifacts created by fetch and branch commands:

~$ git subrepo clean <subdir>|--ALL|--all

El mié., 19 jun. 2019 3:02, David Arnold <> escribió:
Hi All,

It looks like it's popping up again and again.
So,ultimately, we may only delay it, I guess.

Can I ask experienced OCA shoulders to advise on how to lay out a plan to get this done?
In one year, 5 years, 10 years. Doesn't matter.

Matters: get it eventually done.

Best Regards,


Post to:

Post to: