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

Re: Proposal: Write git subtree info to .git/config

From
John Butterfield <johnb003@gmail.com>
Date
Mar 14, 2014, 00:46 UTC
Message-ID
<CAJ2ZDLJtp0Nz-HSyX8DWn96qj=J6Snvx8fKfSNg3qdbmj0=4nA@mail.gmail.com>
In-Reply-To
<CAJ2ZDLK2wGJ5PG585dQRmp7Ck9bctRRtz1unwQ9S0OfVe8G-Bg@mail.gmail.com>
by "per folder" I meant, "for each subtree"
On Thu, Mar 13, 2014 at 5:43 PM, John Butterfield <johnb003@gmail.com> wrote:
Show 58 quoted lines
>> A subtree biding can change over time, but .git/config is about
> recording information that do not change depending on what tree you
> are looking at, so there is an impedance mismatch---storing that
> information in .git/config is probably a wrong way to go about it.
>
> I see. How about a .gitsubtrees config file in the root of a project?
>
>> It might help to keep track of "In this tree, the tip of that other
> history is bound as a subtree at this path", which means that
> information more naturally belongs to each tree, I would think.
>
> Anything in the subdirectory must be part of the contents of the
> subtree repo. It should not know how it is linked to it's parent
> project; parents should know how their children are fetched. Therefore
> it cannot live in the subtree.
>
> Subtrees could be nested. So, should the config be in the root of the
> parent subtree? This makes sense to me.
>
> Example:
>
> /
>   A/
>   B/    # a subtree of (blah)
>     X/
>     Y/  # a subtree of (yada-yada)
>     Z/
>
> So, lets say B has many updates remotely, including pushing and
> pulling changes to Y.
>
> When pulling the changes from B, it would be convenient for it to come
> with the meta data, (subtree repo and commit info) for Y.
>
> So how does that sound; Could we store subtree repo and commit id
> references per folder in a .gitsubtrees file in the root of every
> project?
>
> (Project B is technically it's own project so it would pull it's own
> .gitsubtrees in /B/.gitsubtrees)
>
> `John
>
> On Thu, Mar 13, 2014 at 4:36 PM, Junio C Hamano <gitster@pobox.com> wrote:
>> John Butterfield <johnb003@gmail.com> writes:
>>
>>> Has there been any talk about adding a stub for git subtrees in .git/config?
>>
>> I do not think so, and that is probably for a good reason.
>>
>> A subtree biding can change over time, but .git/config is about
>> recording information that do not change depending on what tree you
>> are looking at, so there is an impedance mismatch---storing that
>> information in .git/config is probably a wrong way to go about it.
>>
>> It might help to keep track of "In this tree, the tip of that other
>> history is bound as a subtree at this path", which means that
>> information more naturally belongs to each tree, I would think.
Previous: John Butterfield
Message 4 of 4 in “Proposal: Write git subtree info to .git/config”
  1. John ButterfieldMar 13, 2014
  2. Junio C HamanoMar 13, 2014
  3. John ButterfieldMar 14, 2014
  4. John ButterfieldMar 14, 2014

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.