From: "Mattias Vannergård" <mattias.vannergard@gmail.com>
To: git@vger.kernel.org
Subject: Re: FW: Query on git submodules
Date: Tue, 2 Jun 2015 09:45:39 +0000 (UTC) [thread overview]
Message-ID: <loom.20150602T113612-540@post.gmane.org> (raw)
In-Reply-To: 4C328B7D13677A4EAF715D0755A6D7EE25C5AD9E@irsmsx110.ger.corp.intel.com
Frawley, Sarah <sarah.frawley <at> intel.com> writes:
> Correct when I referred to 10+ layers I meant nested repositories
which make up a large hierarchy. Some
> repositories are repeated across the hierarchy. We check-out
submodules to tag versions (as opposed
> to master branch). If we need to roll out a particular change across
a hierarchy (e.g. 60 repos) then
> every level in the hierarchy needs to pick up new submodule tags.
>
> The main 2 issues that we see are:
>
> 1. Enforcement of absolute paths in git submodules - I am currently
trialing using a pre-commit hook to
> highlight this issue to users so that they can fix their submodule
urls to relative paths.
>
We enforced the config file instead (containing the host, port and
username) because we use Gerrit. So, our urls are just
ssh:\\<server>:<repo>
> 2. Slowness Integrating updates to submodule hierarchy -I have been
looking at ways of automating such a
> roll out - this can be useful for new project setups or for rolling
out an update to all repos and quickly
> integrating it into the submodule hierarchy. The link below shows
something similar however it checks
> out a master branch of each submodule in its hierarchy.
https://chrisjean.com/recursively-updating-git-submodules/
>
I haven't been able to check performance at our site yet.
> Thanks,
> Sarah
I am planning on using submodules in a way, where I can specify a
configuration of repos with tags, and rebuild the submodule tree, when
selecting a configuration on the top level.
But, yet I have found no easy way to select the tag in a subrepo. I
would like the .gitmodules to accept tag instead of branch. I think
there is very little difference between specifying a branch or a tag,
but it is more convenient to have the release version as a tag.
So, if a product A, consist of subcomponents a1, a2 and a3, the version
v1.1 of product A will have a configuration saying: a1, tag=v0.4; a2,
tag=v1.0; a3, tag=v2.0
Subcomponent can be both a pre-built binary or a shared/common source
base, or a complete 3rd party repository.
Is this comparable to your situation?
I am currently working on editing the git-submodules to add -t (as in
tag). I need to find an easy way to switch between tracking a branch and
locking to tag, though.
BR
/Mattias
next prev parent reply other threads:[~2015-06-02 9:50 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4C328B7D13677A4EAF715D0755A6D7EE25C56C89@irsmsx110.ger.corp.intel.com>
2015-05-22 13:46 ` Query on git submodules Frawley, Sarah
2015-05-26 17:01 ` Heiko Voigt
2015-05-27 13:20 ` FW: " Frawley, Sarah
2015-06-02 9:45 ` Mattias Vannergård [this message]
2015-06-02 11:17 ` Heiko Voigt
2015-06-02 11:27 ` Mattias Vannergård
2015-06-02 11:12 ` Heiko Voigt
2015-06-02 14:22 ` Frawley, Sarah
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=loom.20150602T113612-540@post.gmane.org \
--to=mattias.vannergard@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).