Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork937
Closed
Labels
Description
How to reproduce
- clone any repo
- edit a tracked file
- in python, try to reset withYou will get a stack trace.
Repo().index.reset(working_tree=True)
Step by step recipe:
$ git clone https://github.com/gitpython-developers/GitPython git-python$ cd git-python$ python -m venv --prompt git venv$ .\venv\Scirpts\Activate.ps1 # or whatever script is appropriate for you$ rm pyproject.toml # make any edit$ git status -sb## main...origin/main D pyproject.toml$ python>>> from git import Repo>>> repo.index.reset(working_tree=True)Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\<user>\code\git-python\git\index\util.py", line 103, in check_default_index return func(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\<user>\code\git-python\git\index\base.py", line 1320, in reset new_inst = type(self).from_tree(self.repo, commit) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\<user>\code\git-python\git\index\base.py", line 367, in from_tree repo.git.read_tree(*arg_list, **kwargs) File "C:\Users\<user>\code\git-python\git\cmd.py", line 739, in <lambda> return lambda *args, **kwargs: self._call_process(name, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\user>\code\git-python\git\cmd.py", line 1312, in _call_process return self.execute(call, **exec_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\<user>\code\git-python\git\cmd.py", line 1107, in execute raise GitCommandError(redacted_command, status, stderr_value, stdout_value)git.exc.GitCommandError: Cmd('git') failed due to: exit code(128) cmdline: git read-tree --index-output=C:\Users\<user>\code\git-python\.git\tmpxnmxtmmu HEAD stderr: 'fatal: unable to write new index file'
Expectation
I was expecting the result would be the equivalent ofgit reset --hard HEAD
. Am I doing something incorrectly here? I'm unfamiliar with Windows, so it's quite possible.