Search code examples
gitconfig

Where is the global git config data stored?


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


Solution

  • 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 Stevoisiak 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.