Where does git config --global get written to?

Ian Vaughan picture Ian Vaughan · Jan 22, 2010 · Viewed 761.1k times · Source

When using git config --global to set things up, to which file will it write?

Example:

git config --global core.editor "blah"

I can't find it at these places:

C:\Program Files\Git\etc\gitconfig

C:\myapp\.git\config

I have not set an ENV?

My Git version: 1.6.5.1.1367.gcd48 – on Windows 7

Answer

VonC picture VonC · Jan 22, 2010

Update 2016: with git 2.8 (March 2016), you can simply use:

git config --list --show-origin

And with Git 2.26 (Q1 2020), you can add a --show-scope option

git config --list --show-origin --show-scope

You will see which config is set where.
See "Where do the settings in my Git configuration come from?"

As Steven Vascellaro points out in the comments,

it will work with non-standard install locations. (i.e. Git Portable)

(like the latest PortableGit-2.14.2-64-bit.7z.exe, which can be uncompressed anywhere you want)


Original answer (2010)

From the docs:

--global

For writing options: write to global ~/.gitconfig file rather than the repository .git/config.

Since you're using Git for Windows, it may not be clear what location this corresponds to. But if you look at etc/profile (in C:\Program Files\Git), you'll see:

HOME="$HOMEDRIVE$HOMEPATH"

Meaning:

C:\Users\MyLogin

(on Windows 7)

That means the file is in C:\Users\MyLogin\.gitconfig for Git in Windows 7.