GeezerVison is showing github.com — Needs better error message when repository is rejected by `git` (related to `safe.directory`) · Issue #1616 · gitpython-developers/GitPython
Needs better error message when repository is rejected by git (related to safe.directory) #1616DescriptionInitial state:
Executions using the latest version of Git (version 2.39.3), in a repository owned by other user.
Current behavior:
Executing:
repo = git.Repo(dir_path)
last_commit = repo.head.commit
Ambiguos error is reported:
File "/usr/local/lib/python3.9/site-packages/git/refs/symbolic.py", line 226, in _get_commit
obj = self._get_object()
File "/usr/local/lib/python3.9/site-packages/git/refs/symbolic.py", line 219, in _get_object
return Object.new_from_sha(self.repo, hex_to_bin(self.dereference_recursive(self.repo, self.path)))
File "/usr/local/lib/python3.9/site-packages/git/objects/base.py", line 94, in new_from_sha
oinfo = repo.odb.info(sha1)
File "/usr/local/lib/python3.9/site-packages/git/db.py", line 40, in info
hexsha, typename, size = self._git.get_object_header(bin_to_hex(binsha))
File "/usr/local/lib/python3.9/site-packages/git/cmd.py", line 1383, in get_object_header
return self.__get_object_header(cmd, ref)
File "/usr/local/lib/python3.9/site-packages/git/cmd.py", line 1370, in __get_object_header
return self._parse_object_header(cmd.stdout.readline())
File "/usr/local/lib/python3.9/site-packages/git/cmd.py", line 1329, in _parse_object_header
raise ValueError("SHA could not be resolved, git returned: %r" % (header_line.strip()))
ValueError: SHA could not be resolved, git returned: b''
Expected behavior:
More clear an specific error message or even better a parameter in git.repo() to handle the dubious ownership
Notes:
Doing some debug found that the new version of Git has enable by default a check for dubious ownership that is not handle gracefully by GitPython.
A work around for this is add an exception in Git to consider the file safe git config --global --add safe.directory <dir path> ActivityByron commented on Jul 17, 2023 Do I understand correctly that the repository isn't trusted by git and GitPython fails with a dubious, seemingly unrelated error? Reacted by Mario Alvarado marioaag commented on Jul 17, 2023 changed the title [-]ValueError: SHA could not be resolved, git returned: b''[/-] [+]Needs better error message when repository is rejected by `git` (related to `safe.directory`)[/+] on Jul 18, 2023Byron commented on Jul 18, 2023 Perfect! If you don't mind, could you look at my title and formulate the issue so that it matches the title more? It could be in the form of initial state (a repository owned by someone else), current behaviour, expected behaviour. With that, maybe the issue has a chance to be picked up by someone. Reacted by Mario Alvarado marioaag commented on Jul 19, 2023 Ready! Thanks for the help! Reacted by Sebastian Thiel marioaag commented on Nov 22, 2023 Hi @Byron, could you help me to assign the ticket, I will work on it Byron commented on Nov 23, 2023 Thanks a lot! It’s assigned. marioaag commented on Nov 28, 2023 EliahKagan commented on Dec 23, 2023 Should this issue be closed as completed (in #1746)? Byron commented on Dec 23, 2023
MetadataMetadataDevelopmentNo branches or pull requestsIssue actions
|