Ver Fonte

Support Git worktrees in generation of hash header

(cherry picked from commit 078ab7fe05dcf139b7f943937c602b2c9dbdc8e2)
Pedro J. Estébanez há 2 anos atrás
pai
commit
a6eece7a97
1 ficheiros alterados com 4 adições e 0 exclusões
  1. 4 0
      methods.py

+ 4 - 0
methods.py

@@ -104,6 +104,10 @@ def update_version(module_version_string=""):
         head = open_utf8(os.path.join(gitfolder, "HEAD"), "r").readline().strip()
         if head.startswith("ref: "):
             ref = head[5:]
+            # If this directory is a Git worktree instead of a root clone.
+            parts = gitfolder.split("/")
+            if len(parts) > 2 and parts[-2] == "worktrees":
+                gitfolder = "/".join(parts[0:-2])
             head = os.path.join(gitfolder, ref)
             packedrefs = os.path.join(gitfolder, "packed-refs")
             if os.path.isfile(head):