我想强制 Git 在 Windows 下签出文件LF
not CR+LF
.
我检查了两个配置选项,但无法找到正确的设置组合。
我想将所有文件转换为LF
换行并保留LF
在文件中。
备注:我用过autocrlf = input
但这只是在您提交文件时修复文件。
我想强迫它让他们使用LF
.
可能我不太清楚:
该存储库已经在使用LF
但文件签出使用适用于 Windows 的 Git https://gitforwindows.org/正在使用CR+LF
我想强制 Git 获取它们LF
:
强制 Unix 行结尾.
$ git config --list | grep crlf
core.autocrlf=input
在 Windows 中获得 LF 结尾的正确方法是首先设置core.autocrlf
to false
:
git config --global core.autocrlf false
如果您使用 msysgit,则需要执行此操作,因为它将其设置为true
在其系统设置中。
现在 git 不会做任何行尾标准化。如果您希望签入的文件标准化,请执行以下操作:设置text=auto
在你的.gitattributes
对于所有文件:
* text=auto
And set core.eol
to lf
:
git config --global core.eol lf
现在您还可以通过运行将单个存储库切换到 crlf (在工作目录中!)
git config core.eol crlf
完成配置后,您可能希望 git 规范化目录中的所有文件repo。为此,请转到存储库的根目录并运行以下命令:
git rm --cached -rf .
git diff --cached --name-only -z | xargs -n 50 -0 git add -f
如果您现在希望 git 也规范化您的文件工作目录,运行这些命令:
git ls-files -z | xargs -0 rm
git checkout .
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)