在Windows中覆盖.gitattributes text=auto



这很不直观:

C:python-tdlexamplestermbox>git config core.autocrlf
false
C:python-tdlexamplestermbox>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.

根据具有core.autocrlf=false的各种介质,应该根本没有换行转换。

在项目根目录中,我发现了带有以下行的.gitattributes

# Auto detect text files and perform LF normalization
* text=auto

如果我对此发表评论,警告就会消失。问题是,我如何自动覆盖此.gitattibutes设置?

.gitattributes会覆盖所有配置设置,因此它确实无法被覆盖;可以这么说,它是"越权者"。虽然您可以简单地删除该行,但如果其他开发人员的计算机具有core.autocrlf=true,这将导致不一致的行为。因此,最好的办法是将以下行添加到.gitattributes:* -text。这将禁用所有文件的CRLF处理。

至少在git的现代版本中,.git/info/attributes(或$GIT_DIR/info/attributes)会为本地配置覆盖.gitattributes

使用* !text可以使用core.autocrlf的值,使用* -text可以强制不进行转换。

请参阅有关gitattributestext属性的文档。

另请注意:core.eoleol属性

相关内容

  • 没有找到相关文章

最新更新