From: Jakub Narebski <jnareb@gmail.com>
To: git@vger.kernel.org
Subject: Re: Partial checkouts / submodules
Date: Wed, 21 Nov 2007 01:04:11 +0100 [thread overview]
Message-ID: <fhvslp$9jr$1@ger.gmane.org> (raw)
In-Reply-To: 20071120181932.GA20705@pvv.org
Finn Arne Gangstad wrote:
> I'll try to boil this down to the simplest case possible. If
> submodules can do this I'll be really happy :)
>
> Developer A makes a change in submodule1 and in submodule2
> Developer B makes a change in submodule2 and in submodule3
And committed changes to submodules and supermodule, I guess,
so developer A has submodule1 in state 1a, submodule2 in state 2a.
sumbodule3 in state 3, and supermodule in state [1a, 2a, 3], while
developer B has submodule1 in state 1, submodule2 in state 2b,
submodule3 in state 3b, and supermodule in state [1, 2b, 3b].
> A and B don't know about eachother. They send their modifications
> somewhere (push to a shared repository with a well chosen branch name,
> for example), or send a mail "please pull from my repo" to the patch
> queue manager.
>
> It is absolutely crucial that for each developer, either both their
> modifications go in, or none of them. Git should make picking only
> one of their modifications hard.
Git treats submodules as whole, so merging A and B supermodules will result
in [1a, CONFLICT(2a/2b), 3b]. 2a/2b _might_ resolve cleanly to 2ab,
but this requires submodule2 to be checked out. I'm not sure what git does
in such case, but it is not much different from the case when both sides A
and B modified the same file, but it merges on file-level cleanly; here we
have subprojects and tree-level in-subproject clean merge.
[...]
By the way, submodules in supermodule should be thought as on
'detached HEAD'.
--
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git
next prev parent reply other threads:[~2007-11-21 0:04 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-20 15:59 Partial checkouts / submodules Finn Arne Gangstad
2007-11-20 17:33 ` Sven Verdoolaege
2007-11-20 18:19 ` Finn Arne Gangstad
2007-11-20 18:42 ` Sven Verdoolaege
2007-11-20 18:59 ` Daniel Barkalow
2007-11-20 19:22 ` Finn Arne Gangstad
2007-11-20 20:18 ` Daniel Barkalow
2007-11-21 0:04 ` Jakub Narebski [this message]
2007-11-20 18:03 ` Daniel Barkalow
2007-11-20 18:26 ` Steven Grimm
2007-11-20 18:36 ` Daniel Barkalow
2007-11-20 18:55 ` Sergei Organov
2007-11-20 19:15 ` Daniel Barkalow
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='fhvslp$9jr$1@ger.gmane.org' \
--to=jnareb@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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox