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

Re: [PATCH] Detect renames in diff family.

From
Linus Torvalds <torvalds@osdl.org>
Date
May 19, 2005, 22:26 UTC
Message-ID
<Pine.LNX.4.58.0505191516350.2322@ppc970.osdl.org>
In-Reply-To
<7vll6ayjok.fsf@assigned-by-dhcp.cox.net>
On Thu, 19 May 2005, Junio C Hamano wrote:
> 
> We are talking about the Plumbing.  Thank you for reminding me,
> but sometimes people end up using the bare Plumbing.

There's a pretty simple and nice way to make it both useful and easy to do to arbitrary precision.

Think of the number following the -M as the mantissa.

So -M9 means 0.9 aka "90% match" (or "difference", depending on which way you want to go), and in general -Mx would have the "10% increments" thing.

But since it's a fraction, you just give more precision by adding more numbers, and -M99 would be "99% match", while "-M02" would be "2% match"

Then it would be logical for a plain -M to be 100% match / 0% difference (ie only show renames that are exact), since a "0% match" / 100% difference is nonsensical.

Alternatively, we'd have -M (without any number) just default to something, and you'd give a separate number of how closely you want to mach things, ie

	# These all mean the same thing: (default) 20% difference
	git-diff-tree -M
	git-diff-tree -M --match=80
	git-diff-tree -M --differ=20
	# show only renames that are perfect matches.
	git-diff-tree -M --match=100
	# show _everything_ as a rename, except the
	# matching matrix means that we prefer better
	# matches over worse
	git-diff-tree -M --match=0
Hmm?
		Linus
Previous: Junio C HamanoNext: Junio C Hamano
Message 11 of 43 in “Detect renames in diff family.”
  1. Detect renames in diff family.Junio C Hamano, May 19, 2005
  2. Linus TorvaldsMay 19, 2005
  3. Junio C HamanoMay 19, 2005
  4. Linus TorvaldsMay 19, 2005
  5. Nicolas PitreMay 19, 2005
  6. Junio C HamanoMay 19, 2005
  7. Nicolas PitreMay 19, 2005
  8. Junio C HamanoMay 19, 2005
  9. Nicolas PitreMay 19, 2005
  10. Junio C HamanoMay 19, 2005
  11. Linus TorvaldsMay 19, 2005
  12. Junio C HamanoMay 19, 2005
  13. Linus TorvaldsMay 20, 2005
  14. Junio C HamanoMay 20, 2005
  15. Junio C HamanoMay 19, 2005
  16. Junio C HamanoMay 19, 2005
  17. Linus TorvaldsMay 19, 2005
  18. Junio C HamanoMay 19, 2005
  19. H. Peter AnvinMay 19, 2005
  20. Joel BeckerMay 19, 2005
  21. Junio C HamanoMay 21, 2005
  22. 1/3 Diff overhaul, adding half of copy detection.Junio C Hamano, May 21, 2005
  23. 2/3 Introducing software archaeologist's tool "pickaxe".Junio C Hamano, May 21, 2005
  24. Constness fix for pickaxe option.Junio C Hamano, May 21, 2005
  25. Linus TorvaldsMay 21, 2005
  26. 3/3 Diff overhaul, adding the other half of copy detection.Junio C Hamano, May 21, 2005
  27. Teach diff-tree to report unmodified paths for -C option.Junio C Hamano, May 21, 2005
  28. Junio C HamanoMay 21, 2005
  29. Linus TorvaldsMay 21, 2005
  30. Junio C HamanoMay 21, 2005
  31. Linus TorvaldsMay 21, 2005
  32. Linus TorvaldsMay 21, 2005
  33. Linus TorvaldsMay 21, 2005
  34. Junio C HamanoMay 21, 2005
  35. Junio C HamanoMay 24, 2005
  36. Linus TorvaldsMay 24, 2005
  37. Junio C HamanoMay 24, 2005
  38. Linus TorvaldsMay 24, 2005
  39. Junio C HamanoMay 24, 2005
  40. Detect copies harder in diff-tree.Junio C Hamano, May 26, 2005
  41. Junio C HamanoMay 21, 2005
  42. Tweak diffcore-rename heuristics.Junio C Hamano, May 21, 2005
  43. Now I think I am done with diff...Junio C Hamano, May 23, 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.