Explorar o código

Support Git worktrees in generation of hash header

(cherry picked from commit 078ab7fe05dcf139b7f943937c602b2c9dbdc8e2)
Pedro J. Estébanez %!s(int64=2) %!d(string=hai) anos
pai
achega
5703cc861f
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      methods.py

+ 4 - 0
methods.py

@@ -121,6 +121,10 @@ def get_version_info(module_version_string="", silent=False):
         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):