diff options
Diffstat (limited to 'git_config.py')
| -rw-r--r-- | git_config.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/git_config.py b/git_config.py index 68016fff..14c4c11a 100644 --- a/git_config.py +++ b/git_config.py | |||
| @@ -90,6 +90,20 @@ class GitConfig: | |||
| 90 | 90 | ||
| 91 | @staticmethod | 91 | @staticmethod |
| 92 | def _getUserConfig(): | 92 | def _getUserConfig(): |
| 93 | """Get the user-specific config file. | ||
| 94 | |||
| 95 | Prefers the XDG config location if available, with fallback to | ||
| 96 | ~/.gitconfig | ||
| 97 | |||
| 98 | This matches git behavior: | ||
| 99 | https://git-scm.com/docs/git-config#FILES | ||
| 100 | """ | ||
| 101 | xdg_config_home = os.getenv( | ||
| 102 | "XDG_CONFIG_HOME", os.path.expanduser("~/.config") | ||
| 103 | ) | ||
| 104 | xdg_config_file = os.path.join(xdg_config_home, "git", "config") | ||
| 105 | if os.path.exists(xdg_config_file): | ||
| 106 | return xdg_config_file | ||
| 93 | return os.path.expanduser("~/.gitconfig") | 107 | return os.path.expanduser("~/.gitconfig") |
| 94 | 108 | ||
| 95 | @classmethod | 109 | @classmethod |
