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

[PATCH v3 1/5] git-p4: Allow setting rename/copy detection threshold

From
Vitor Antunes <vitor.hda@gmail.com>
Date
Aug 22, 2011, 08:33 UTC
Message-ID
<1314001989-29017-2-git-send-email-vitor.hda@gmail.com>
In-Reply-To
<1314001989-29017-1-git-send-email-vitor.hda@gmail.com>

Copy and rename detection arguments (-C and -M) allow setting a threshold value for the similarity ratio. If the similarity is below this threshold the rename or copy is ignored and the file is added as new. This patch allows setting git-p4.detectRenames and git-p4.detectCopies options to an integer value to set the respective threshold.

Signed-off-by: Vitor Antunes <vitor.hda@gmail.com>
---
 contrib/fast-import/git-p4 |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4
index 6b9de9e..29a5390f 100755
--- a/contrib/fast-import/git-p4
+++ b/contrib/fast-import/git-p4
@@ -774,15 +774,20 @@ class P4Submit(Command, P4UserMap):
 
         if not self.detectRenames:
             # If not explicitly set check the config variable
-            self.detectRenames = gitConfig("git-p4.detectRenames").lower() == "true"
+            self.detectRenames = gitConfig("git-p4.detectRenames")
 
-        if self.detectRenames:
+        if self.detectRenames.lower() == "false" or self.detectRenames == "":
+            diffOpts = ""
+        elif self.detectRenames.lower() == "true":
             diffOpts = "-M"
         else:
-            diffOpts = ""
+            diffOpts = "-M%s" % self.detectRenames
 
-        if gitConfig("git-p4.detectCopies").lower() == "true":
+        detectCopies = gitConfig("git-p4.detectCopies")
+        if detectCopies.lower() == "true":
             diffOpts += " -C"
+        elif detectCopies != "" and detectCopies.lower() != "false":
+            diffOpts += " -C%s" % detectCopies
 
         if gitConfig("git-p4.detectCopiesHarder").lower() == "true":
             diffOpts += " --find-copies-harder"
-- 
1.7.5.4
Previous: Vitor AntunesNext: Pete Wyckoff
Message 2 of 8 in “Support threshold in copy/rename detection”
  1. 0/5 Support threshold in copy/rename detectionVitor Antunes, Aug 22, 2011
  2. 1/5 git-p4: Allow setting rename/copy detection thresholdVitor Antunes, Aug 22, 2011
  3. Pete WyckoffAug 22, 2011
  4. Vitor AntunesAug 22, 2011
  5. 2/5 git-p4: Add description of rename/copy detection optionsVitor Antunes, Aug 22, 2011
  6. 3/5 git-p4: Add test case for rename detectionVitor Antunes, Aug 22, 2011
  7. 4/5 git-p4: Add test case for copy detectionVitor Antunes, Aug 22, 2011
  8. 5/5 git-p4: Process detectCopiesHarder with --boolVitor Antunes, Aug 22, 2011

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.