-
-
Notifications
You must be signed in to change notification settings - Fork 954
Commit f2254af
_to_relative_path to support mixing slashes and backslashes
Working on Windows you sometime end up having some paths with backslashes (windows native) and some with slashes - this PR will resolve the issue using gitpython for those kind of cases (see example below). It will also fix the issues if paths contain redundant separators or "..".
```
import git
repo = git.Repo(r"C:\gittest")
repo.index.add(r"C:\gittest1円.txt")
# Traceback (most recent call last):
# File "c:\second_test.py", line 5, in <module>
# repo.index.add(r"C:/gittest/2.txt")
# File "Python311\Lib\site-packages\git\index\base.py", line 879, in add
# paths, entries = self._preprocess_add_items(items)
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# File "Python311\Lib\site-packages\git\index\base.py", line 672, in _preprocess_add_items
# paths.append(self._to_relative_path(item))
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# File "Python311\Lib\site-packages\git\index\base.py", line 657, in _to_relative_path
# raise ValueError("Absolute path %r is not in git repository at %r" % (path, self.repo.working_tree_dir))
# ValueError: Absolute path 'C:/gittest/2.txt' is not in git repository at 'C:\\gittest'
repo.index.add(r"C:/gittest/2.txt")
repo.index.commit("test")
```1 parent cfadd9e commit f2254af
1 file changed
+1
-1
lines changedOriginal file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
653 | 653 |
| |
654 | 654 |
| |
655 | 655 |
| |
656 | - | ||
656 | + | ||
657 | 657 |
| |
658 | 658 |
| |
659 | 659 |
| |
|
0 commit comments