diff --git a/methods.py b/methods.py index 012bbd8305a..7db490ba1f0 100644 --- a/methods.py +++ b/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):