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

Re: Joining Repositories

From
Linus Torvalds <torvalds@osdl.org>
Date
Jan 18, 2006, 18:03 UTC
Message-ID
<Pine.LNX.4.64.0601180957460.3240@g5.osdl.org>
In-Reply-To
<20060118170536.GS28365@pasky.or.cz>
On Wed, 18 Jan 2006, Petr Baudis wrote:
> 
> Well, the recursive merge strategy is at least advertised to be able to
> merge across renames (as long as they are autodetected).

Yes. It can. However, the git merge approach fundamentally expects that the merged trees _converge_.

So what happens is that if two trees continue to be developed as separate trees, and the merges never converge (ie they happen just one way, with the other way seldom or never merging back), the merge strategy will get increasingly bad.

That's pretty unavoidable, btw. I can pretty much guarantee that nobody else will really do it any better, although any particular strategy will always handle one particular case perfectly (*).

			Linus

(*) I think merging is like scheduling: you can always find a perfect scheduling algorithm _after_the_fact_ when you know the load, but finding one that works for all loads inevitably means that some cases won't work well. You also find scheduling getting an inordinate amount of time in CS literature, while in real life it's one of the least important problems of a kernel.

Previous: Junio C HamanoNext: Junio C Hamano
Message 15 of 25 in “Joining Repositories”
  1. Mathias WaackJan 18, 2006
  2. Petr BaudisJan 18, 2006
  3. Petr BaudisJan 18, 2006
  4. Mathias WaackJan 18, 2006
  5. Petr BaudisJan 18, 2006
  6. Mathias WaackJan 19, 2006
  7. Junio C HamanoJan 19, 2006
  8. Andreas EricssonJan 18, 2006
  9. Ryan AndersonJan 18, 2006
  10. Petr BaudisJan 18, 2006
  11. Ryan AndersonJan 18, 2006
  12. Linus TorvaldsJan 18, 2006
  13. Petr BaudisJan 18, 2006
  14. Junio C HamanoJan 18, 2006
  15. Linus TorvaldsJan 18, 2006
  16. Junio C HamanoJan 18, 2006
  17. Linus TorvaldsJan 18, 2006
  18. Junio C HamanoJan 18, 2006
  19. Linus TorvaldsJan 18, 2006
  20. Linus TorvaldsJan 18, 2006
  21. Linus TorvaldsJan 18, 2006
  22. Junio C HamanoJan 19, 2006
  23. Petr BaudisJan 19, 2006
  24. Ryan AndersonJan 18, 2006
  25. H. Peter AnvinJan 18, 2006

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.