Thread (21 messages) flat view 21 messages, 8 authors, 2016-06-15

Re: RFC: Making submodules "track" branches

From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2016-06-15 22:48:56

On Tue, Jun 8, 2010 at 19:32, Marc Branchaud [off-list ref] wrote:
On 10-06-08 12:09 PM, Ævar Arnfjörð Bjarmason wrote:
quoted
On Tue, Jun 8, 2010 at 15:34, Marc Branchaud [off-list ref] wrote:
quoted
So, back to the issue at hand: Sometimes I want static (non-tracking)
submodules, and sometimes I want dynamic (tracking) submodules.  IMO, this
makes Ævar's proposed configuration-based approach impractical.  (Of course,
I'm not looking to replicate svn's externals...)
I'm proposing that you be able to configure how you want to handle
submodules on a per-submodule basis.
Yes, and that's precisely the problem.  For a given submodule, sometimes it
should track a branch and sometimes it shouldn't.  Having to edit a
configuration to change that is impractical.
See below.
quoted
The exact semantics that I proposed may be impractical for some
reason, but the idea is that it'd be opt in. We'd perhaps have
multiple approaches (via config) to submodules, instead of the current
monolithic scheme.
Opting in or out can't just be a monolithic setting for each submodule.  A
submodule's branch tracking has to be on or off depending on the circumstances.
I don't really get what the objection is exactly. How should "branch
tracking" be achieved do you think?

Anyway, right now what we track is set in a monolithic fashion by a
combination of a commit pointer in a tree and what's being versioned
in .gitmodules. If you want to change anything that's where you have
to do it.

Why should it be any different when the submodule isn't tracking a
specific commit? I.e. when it's "track the latest version of $thingy,
whatever that is", instead of "track version $version of $thingy".
quoted
So if you didn't want a svn:externals like "always track trunk"
repository you'd just not set your superproject up to treat the
submodule like that.
Yes, of course.

I guess what I'm saying is that duplicating svn's externals doesn't seem all
that useful to me and I'd rather see git do better.  I've no objection if
folks want to have such a feature, but to me it's not what "submodules
tracking branches" should be about.
Obviously I have no objection to doing better, but how specifically
should that be done? If the semantics you want are "give me the latest
version of $URL, whatever that is" then the SVN semantics are pretty
good.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help