git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: submodules and merging (Was: Re: [PATCH 02/30] merge-recursive: Fix logic ordering issue)

From
Jacob Keller <jacob.keller@gmail.com>
Date
Dec 4, 2017, 20:16 UTC
Message-ID
<CA+P7+xrTZZn0r8JBG+=tjEN__jVsLZrNxbA9B_m0PNu2+c0hGg@mail.gmail.com>
In-Reply-To
<CAGZ79kYbhTyHRMRvZaq3SC7MpxdruXsr+4nKGo-4RojjymwYVA@mail.gmail.com>
On Mon, Dec 4, 2017 at 11:33 AM, Stefan Beller <sbeller@google.com> wrote:
Show 31 quoted lines
> On Sat, Nov 25, 2017 at 9:59 PM, Jacob Keller <jacob.keller@gmail.com> wrote:
>> On Sat, Nov 25, 2017 at 2:37 PM, Elijah Newren <newren@gmail.com> wrote:
>>> On Wed, Nov 15, 2017 at 9:13 AM, Jacob Keller <jacob.keller@gmail.com> wrote:
>>>> On Tue, Nov 14, 2017 at 10:13 AM, Stefan Beller <sbeller@google.com> wrote:
>>>
>>>>> But this line of though might be distracting from your original point,
>>>>> which was that we have so much to keep in mind when doing tree
>>>>> operations (flags, D/F conflicts, now submodules too). I wonder how
>>>>> a sensible refactoring would look like to detangle all these aspects,
>>>>> but still keeping Git fast and not overengineered.
>>>>
>>>> I think given how complex a lot of these code paths are, that an
>>>> attempt to refactor it a bit to detangle some of the mess would be
>>>> well worth the time. I'd suspect it might make handling the more
>>>> complex task of actually resolving conflicts to be easier, so the
>>>> effort to clean up the code here should be worth it.
>>>
>>> I think changing from a 4-way merge to a 3-way merge would make things
>>> much better, as Junio outlined here:
>>>
>>> https://public-inbox.org/git/xmqqd147kpdm.fsf@gitster.mtv.corp.google.com/
>>>
>>> I don't know of any way to detangle the other aspects, yet.
>
> Jonathan Nieder and me tried some pair programming some time ago[1]
> plumbing the repository object through most of the low level internals, which
> would help in detangling submodule merges as then these merges could
> be done in-core, just as Junio laid out.
>
> [1] https://github.com/stefanbeller/git/tree/object-store-jrn-rebased
>
This sounds promising to me.

Thanks, Jake

Show 8 quoted lines
>> I agree, that is absolutely a (big) step in the right direction.
>
>
> I agree as well; A better (abstracted) merge backend would be huge for
> the future of Git.
>
> Thanks,
> Stefan
Previous: Stefan Beller
Message 7 of 7 in “submodules and merging (Was: Re: [PATCH 02/30] merge-recursive: Fix logic ordering issue)”
  1. Elijah NewrenNov 14, 2017
  2. Stefan BellerNov 14, 2017
  3. Jacob KellerNov 15, 2017
  4. Elijah NewrenNov 25, 2017
  5. Jacob KellerNov 26, 2017
  6. Stefan BellerDec 4, 2017
  7. Jacob KellerDec 4, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.