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

Re: Moved files and merges

From
Junio C Hamano <junkio@cox.net>
Date
Sep 5, 2005, 18:33 UTC
Message-ID
<7v4q8z5pqv.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<431C6167.4070703@zytor.com>
"H. Peter Anvin" <hpa@zytor.com> writes:
> One question, of course, is if one should simply keep additional 
> metadata around to handle this sort of situations.  One could, for 
> example, keep a UUID for each file,...

If I am not mistaken, that is exactly what tla does. It seems to work well in practice and seem so simple (at least superficially, I have not looked deeply into the issues involved in keeping it sync with the contents and how to recover if the user ever screws up, etc.), and I can see why people find it so attractive. I myself once did.

But previous argument by Linus made in a distant (in git timescale) past is now ingrained in my brain: "the additional metadata" recorded at the commit time can only help us what we envisioned in the past when the tool to record that metadata was written. If we try to "track" by contents, we can do at least the same (diff -M being able to tell renames is an example that we can get away without having a UUID) and possibly better, depending on how much effort we are willing to spend "drilling down" when we actually need to know what happened at merge time. What I found most important in that argument by Linus is that the "drilling down" algorithm can improve over time while "the additional metadata" specification is cast in stone when a commit is made.

Previous: Junio C HamanoNext: H. Peter Anvin
Message 19 of 23 in “Moved files and merges”
  1. H. Peter AnvinSep 2, 2005
  2. Martin LanghoffSep 3, 2005
  3. H. Peter AnvinSep 4, 2005
  4. Junio C HamanoSep 3, 2005
  5. Junio C HamanoSep 3, 2005
  6. Fredrik KuivinenSep 3, 2005
  7. Junio C HamanoSep 3, 2005
  8. Junio C HamanoSep 3, 2005
  9. Sam RavnborgSep 3, 2005
  10. Junio C HamanoSep 3, 2005
  11. Sam RavnborgSep 3, 2005
  12. Junio C HamanoSep 4, 2005
  13. Daniel BarkalowSep 4, 2005
  14. Junio C HamanoSep 4, 2005
  15. H. Peter AnvinSep 5, 2005
  16. Linus TorvaldsSep 5, 2005
  17. H. Peter AnvinSep 5, 2005
  18. Junio C HamanoSep 5, 2005
  19. Junio C HamanoSep 5, 2005
  20. H. Peter AnvinSep 5, 2005
  21. Junio C HamanoSep 4, 2005
  22. Fredrik KuivinenSep 3, 2005
  23. Sam RavnborgSep 3, 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.