如果我使用autocrlf
,看起来就像这里
push clone
1) true: x -> LF -> CRLF
2) input: x -> LF -> LF
3) false: x -> x -> x
但是我想用CRLF进行git自动提交:
x -> CRLF (if I use LF, it will commit with CRLF)
我可以吗?
提前感谢!!!
编辑:我认为git不支持它,因此我用[crlf]强制将lf
更改为crlf
。1
答案 0 :(得分:1)
您至少可以确保使用eol
directive in a .gitattributes
file正确检出文件:
# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
此设置会强制Git在签入时对此文件的行尾进行规范化,并在签出文件时将其转换为CRLF。
结合git config --global core.autocrlf false
可以确保您的文件在工作树中可用。
我想在使用CRLF或LF提交文件时,将其git更改为CRLF。
使用上述设置,这似乎是不可能的,因为默认归一化始终是在签入时转换LF。
但这只是确保您的文件以正确的eol(行尾)检出。
但是,如果您想在签入时强制crlf,则需要手动执行。
试试:
git config --global core.autocrlf false
确保在任何.gitattributes文件中没有任何core.eol
或text eol
指令(以避免任何“重新规范化”)
然后对检出错误eol的任何文件执行unix2dos
。
最后,添加并提交:那些带有CRLF的文件仍应使用CRLF检入。
答案 1 :(得分:1)
您可以使用某些模块将LF
更改为CRLF
。
但是我认为您不需要更改它,只需使用autocrlf=true