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 else echo 'Using LINUX specific git settings' export XDG_CONFIG_HOME=.config-linux fi This seems to work nicely!! I share my $HOME directory (located in dropbox) across all platforms so this helps me keep a consistent environment across all my machines with zero effort. On Sun, Mar 15, 2015 at 6:37 PM, Robert Dailey <rcdailey.lists@xxxxxxxxx> wrote: > 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 > 4. system level git config (not sure exactly where this is; not > relevant to me on Windows) > > I have a .gitconfig in Dropbox that I symlink to my home directory on > different platforms. Specifically, I share this gitconfig across > Cygwin/msys on Windows and Ubuntu. > > If I can use XDG_CONFIG_HOME to leverage platform-specific settings, > I'd be able to keep platform-agnostic settings in my $HOME/.gitconfig > and put platform-specific settings in $XDG_CONFIG_HOME/git/config and > simply give XDG_CONFIG_HOME a different name on different platforms. > > Is this what it was designed for? If not, what would be the best > approach for this? I was thinking of contributing a patch that would > let you specify the name of your git config in the home directory, but > I'm not sure if that is necessary. Something like this: > > $HOME/$GIT_CONFIG_FILENAME, where GIT_CONFIG_FILENAME defaults to > ".gitconfig" if it is not set or empty. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html