Thread (1 message) 1 message, 1 author, 2016-06-15

Re: What is XDG_CONFIG_HOME for exactly?

From: Matthieu Moy <hidden>
Date: 2016-06-15 23:04:10

On Sun, Mar 15, 2015 at 6:37 PM, Robert Dailey [off-list ref] wrote:
quoted
My understanding is that git reads the priority of configuration as follows:

1. <local_repo>/.git/config
2. $HOME/.gitconfig
3. $XDG_CONFIG_HOME/git/config
$HOME/.gitconfig is the traditional Unix location for config files. It
was the only per-user config files in early versions of Git.

$XDG_CONFIG_HOME/git/config is the location following freedesktop's XDG
standard. It has several advantages (you can version and/or share
individual $XDG_CONFIG_HOME/git/ as a whole directory, while it's much
harder to version all ~/.git* files individually for example).

You typically want to use either one or the other.
quoted
4. system level git config (not sure exactly where this is; not
relevant to me on Windows)
This is relevant if you use a shared machine and your sysadmin wants to
have the same configuration for all users.
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Robert Dailey [off-list ref] writes:
As a follow-up, I tested the following in my .bashrc:


# Utilize different GIT settings based on platform
if [[ $OSTYPE == 'msys' || $OSTYPE == 'cygwin' ]]; then
    echo 'Using WINDOWS specific git settings'
    export XDG_CONFIG_HOME=.config-windows
You need an absolute directory here:

export XDG_CONFIG_HOME=$HOME/.config-windows

Then, I'd suggest that $XDG_CONFIG_HOME/git/config contains a

[include]
    path = ../../.config-shared/git/config

so that you can factor out common portions of your config file into
.config-shared/git/config and keep machine-specific portions in
~/.config-{windows,linux}.

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help