summaryrefslogtreecommitdiff
path: root/git/util.py
diff options
context:
space:
mode:
Diffstat (limited to 'git/util.py')
-rw-r--r--git/util.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/git/util.py b/git/util.py
index 220901a4..581bf877 100644
--- a/git/util.py
+++ b/git/util.py
@@ -24,6 +24,7 @@ from urllib.parse import urlsplit, urlunsplit
from typing import (Any, AnyStr, BinaryIO, Callable, Dict, Generator, IO, Iterator, List,
Optional, Pattern, Sequence, Tuple, Union, cast, TYPE_CHECKING, overload)
+import pathlib
if TYPE_CHECKING:
from git.remote import Remote
@@ -379,7 +380,9 @@ def expand_path(p: PathLike, expand_vars: bool = ...) -> str:
...
-def expand_path(p: Union[None, PathLike], expand_vars: bool = True) -> Optional[str]:
+def expand_path(p: Union[None, PathLike], expand_vars: bool = True) -> Optional[PathLike]:
+ if isinstance(p, pathlib.Path):
+ return p.resolve()
try:
p = osp.expanduser(p) # type: ignore
if expand_vars: