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

Re: [PATCH 0/2] apply.c: a fix and an enhancement

From
RARyan Anderson <ryan@michonline.com>
Date
Jul 22, 2005, 20:16 UTC
Message-ID
<20050722201606.GV20369@mythryan2.michonline.com>
In-Reply-To
<7vsly6vd2b.fsf@assigned-by-dhcp.cox.net>
On Fri, Jul 22, 2005 at 12:46:36PM -0700, Junio C Hamano wrote:
Show 14 quoted lines
> Ryan Anderson <ryan@michonline.com> writes:
> 
> > On Fri, Jul 22, 2005 at 09:56:19AM -0700, Junio C Hamano wrote:
> >> Now if we had a mechanism to graft a later history which starts
> >> at 2.6.12-rc2 on top of this earlier history leading up to
> >> it,...  ;-)
> >
> > We do - it's not even very hard, we just end up with 2 commits for every
> > change/merge that's unique to git, until we get to the current head:
> 
> Aren't you essentially rewriting the history after 2.6.12-rc2?.
> I suspect that would invalidate the current linux-2.6 history
> people have been basing their work on since 2.6.12-rc2, which is
> unacceptable.  That is not what I meant by "grafting".
hmm, I may have been a bit too terse.
Each new commit would have at least two parents:
	The commit from the current, 2.6.12-rc2 based tree.
	The commits generated by this process that have, as one of their
	children, the parents of the current commit from the 2.6.12-rc2
	based tree.

That will mean all the merge tools will find a common base, and, at worst, cycle through an extra commit that should add *no* extra issues.

Let me see if I can draw a picture of 5 or 6 commit tree:
Today:
A0->->-A1->->-A2
 \           /
  \--B1->->-/
Stiched together:
  A0->->-A1->->-A2
  |\      |    / |
  | \--B1->->-/  |
  |    |  |      |
O-M0->->-M1->->->M2
   \   |        /
    \--N1->->->/
O being the old tree we're grafting on.

So, M0 would have parents of A0 and O, and the commit metadata from A0 N1 would have parents of M0 and B1, and the commit metadata from B1 M1 would have parents of A1 and M0, and the commit metadata from A1 M2 would have parents of A2, M1, and N1 and the commit metadata from A2

Does that help?
-- 
Ryan Anderson
  sometimes Pug Majere
Previous: Junio C HamanoNext: A Large Angry SCM
Message 4 of 16 in “apply.c: a fix and an enhancement”
  1. 0/2 apply.c: a fix and an enhancementJunio C Hamano, Jul 22, 2005
  2. Ryan AndersonJul 22, 2005
  3. Junio C HamanoJul 22, 2005
  4. Ryan AndersonJul 22, 2005
  5. A Large Angry SCMJul 22, 2005
  6. Linus TorvaldsJul 22, 2005
  7. Junio C HamanoJul 22, 2005
  8. Linus TorvaldsJul 22, 2005
  9. Santi BéjarJul 22, 2005
  10. Junio C HamanoJul 22, 2005
  11. Linus TorvaldsJul 22, 2005
  12. Petr BaudisJul 22, 2005
  13. Junio C HamanoJul 23, 2005
  14. Petr BaudisJul 22, 2005
  15. Linus TorvaldsJul 22, 2005
  16. Petr BaudisJul 22, 2005

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.