Re: git/path.c - order of accessing ~/.gitconfig
From: Matthieu Moy <hidden>
Date: 2016-06-15 22:58:47
Madhu [off-list ref] writes:
* commit 21cf32279120799a766d22416be7d82d9ecfbd04 | | Author: Huynh Khoi Nguyen Nguyen [off-list ref] | Date: Fri Jun 22 11:03:23 2012 +0200 | | config: read (but not write) from $XDG_CONFIG_HOME/git/config file | | Teach git to read the "gitconfig" information from a new location, | $XDG_CONFIG_HOME/git/config; this allows the user to avoid | cluttering $HOME with many per-application configuration files. | | In the order of reading, this file comes between the global | configuration file (typically $HOME/.gitconfig) and the system wide | configuration file (typically /etc/gitconfig). However git/config.c (git_config_early) commit accesses xdg_config before user_config. So the comments and documentation are inconsistent with the code.
It seems the commit message is wrong, indeed. But it's too late to fix it. OTOH, the documentation seems right to me (Documentation/git-config.txt). It says: $(prefix)/etc/gitconfig:: System-wide configuration file. $XDG_CONFIG_HOME/git/config:: Second user-specific configuration file. If $XDG_CONFIG_HOME is not set or empty, `$HOME/.config/git/config` will be used. Any single-valued variable set in this file will be overwritten by whatever is in `~/.gitconfig`. It is a good idea not to create this file if you sometimes use older versions of Git, as support for this file was added fairly recently. ~/.gitconfig:: User-specific configuration file. Also called "global" configuration file. $GIT_DIR/config:: Repository specific configuration file. -- Matthieu Moy http://www-verimag.imag.fr/~moy/