git_config_level_t

Priority level of a config file. These priority levels correspond to the natural escalation logic (from higher to lower) when searching for config entries in git.git.

git_config_open_default() and git_repository_config() honor those priority levels as well.

Values

ValueMeaning
GIT_CONFIG_LEVEL_PROGRAMDATA1

System-wide on Windows, for compatibility with portable git

GIT_CONFIG_LEVEL_SYSTEM2

System-wide configuration file; /etc/gitconfig on Linux systems

GIT_CONFIG_LEVEL_XDG3

XDG compatible configuration file; typically ~/.config/git/config

GIT_CONFIG_LEVEL_GLOBAL4

User-specific configuration file (also called Global configuration file); typically ~/.gitconfig

GIT_CONFIG_LEVEL_LOCAL5

Repository specific configuration file; $WORK_DIR/.git/config on non-bare repos

GIT_CONFIG_LEVEL_APP6

Application specific configuration file; freely defined by applications

GIT_CONFIG_HIGHEST_LEVEL-1

Represents the highest level available config file (i.e. the most specific config file available that actually is loaded)

Meta