use*_*656 40 git version-control newline msysgit core.autocrlf
我是git的新手,我需要一些帮助.我在windows上使用msysgit.
当我执行命令时,git add [folderName]我得到了响应:
fatal: LF would be replaced by CRLF in [.css file or .js file]
Run Code Online (Sandbox Code Playgroud)
然后,如果你尝试做一个提交没有任何反应.
$ git commit
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# so01/
nothing added to commit but untracked files present (use "git add" to track)
Run Code Online (Sandbox Code Playgroud)
其中一些css/js文件是从网上下载的,所以我猜这就是为什么有LF.如果我打开文件并剪切/粘贴内容,那么我会在下一个文件上收到错误,依此类推.
任何帮助都感激不尽.
编辑
设置core.autocrlf为false似乎可以解决问题,但我在很多帖子上都没有将此选项设置为false.
有人能指出我在哪里可以找出在这种情况下可能出现的问题?
sig*_*i13 24
这是非常新的,所以将core.autocrlf设置为false对我来说没有多大意义.所以对于其他新手,请转到.git文件夹中的配置文件并添加:
[core]
autocrlf = false
Run Code Online (Sandbox Code Playgroud)
在[核心]标题下.
Ada*_*ruk 22
相信代码编辑器可以操纵你的行结尾.汽车crlf应该是假的.不要让源代码控制过于聪明.如果不需要使用源代码管理工具来更改行结尾,请不要这样做.这会伤害你.
从一个公认的答案中重申:"除非你能看到必须处理本地eol的特定处理,否则最好不要将autocrlf留给假."
同样来自autocrlf一节末尾的progit书:
"如果您是Windows程序员,只执行Windows项目,那么您可以关闭此功能,通过将配置值设置为false来记录存储库中的回车"
我可以给出的唯一其他帮助是,如果你采取其他路线,熟悉vim -b哪些将显示特殊字符,如MSysGit中的CR,git show HEAD:path/to/your/file.txt哪些应该以git存储它的方式显示文件.
设置core.whitespace cr-at-eol为具有补丁和差异不会突出显示CR可能有问题的空白.
不值得麻烦.按原样存储.
该问题可能发生,因为你设置的Git内部存储与文件crlf与core.eol设置.当您添加文件时,Git会警告您它会将其更改为内部格式.
Git最适合使用lf行结尾,因此如果可能的话,总是可以使用core.eol = lf.
这应该说明何时使用core.autocrlf,为什么我应该在Git中使用core.autocrlf = true?
您可能还想使用core.safecrlf.检查git config --help有关设置的详细信息.