Why are there two different lines with core.autocrlf output with "git config -l"?

Issue

I’m trying to set core.autocrlf=true. But after executing git config --global core.autocrlf true the output of git config -l shows both these lines

core.autocrlf=false
... other settings ...
core.autocrlf=true

Why is this, and how can I ensure that autocrlf gets properly set to true?

Solution

You can know more with Git 2.8+:

git config -l --show-origin

That will give you a better idea from where those settings come from.
Local config override global settings which overrides system settings.

See a concrete example in "Where do the settings in my Git configuration come from?".

Xavi Montero points out to the Pro Book "Getting Started – First-Time Git Setup" which mentions:

If you are using version 2.x or later of Git for Windows, there is also a system-level config file at

  • C:\Documents and Settings\All Users\Application Data\Git\config on Windows XP, and
  • in C:\ProgramData\Git\config on Windows Vista and newer.

This config file can only be changed by git config -f <file> as an admin.


On Windows 10, Jon R reports the issue was in C:/Program Files/Git/etc/gitconfig.

Answered By – VonC

This Answer collected from stackoverflow, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply

(*) Required, Your email will not be published