This is pretty unintuitive:
C:\python-tdl\examples\termbox>git config core.autocrlf
false
C:\python-tdl\examples\termbox>git commit termbox.py
warning: LF will be replaced by CRLF in examples/termbox/termbox.py.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in examples/termbox/termbox.py.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in examples/termbox/termbox.py.
The file will have its original line endings in your working directory.
Aborting commit due to empty commit message.
According to various media with core.autocrlf=false
there should be no linefeed conversion at all.
In project root I discovered .gitattributes
with the line:
# Auto detect text files and perform LF normalization
* text=auto
If I comment it, the warning goes away. The question - how can I override this .gitattibutes
setting automatically?
.gitattributes
overrides all config settings, so it really can't be overridden; it is the "overrider," so to speak. While you can simply remove the line, this will cause inconsistent behavior on other developers' machines if they havecore.autocrlf=true
. So the best bet would be to add the following line to.gitattributes
:* -text
. This will disable CRLF processing for all files.At least in modern versions of git,
.git/info/attributes
(or$GIT_DIR/info/attributes
) overrides.gitattributes
for local configuration.Use
* !text
to use the value ofcore.autocrlf
, or* -text
to force no conversion.See the documentation for
gitattributes
and thetext
attribute.Also note:
core.eol
, theeol
attribute