可能重复:
git用CRLF替换LF
当我创建一个新的rails应用程序时,我在git中看到有关LF替换的警告.我做git init git add.
然后热潮!我看到几乎所有文件都弹出.我通常只是继续构建我的应用程序,它在文件的许多更改后消失了.
例:
该文件将在您的工作目录中具有其原始行结尾.警告:LF将被Gemfile中的CRLF替换.
该文件将在您的工作目录中具有其原始行结尾.警告:LF将被Gemfile.lock中的CRLF替换.
该文件将在您的工作目录中具有其原始行结尾.警告:LF将由README中的CRLF替换.
LF和CRLF有什么区别?
从长远来看,我是否应该关注这一点,或者只是忽略它并像往常一样继续前进?
Shr*_*itz 1424
在Unix系统中,行的结尾用换行符(LF)表示.在窗口中,一行用回车(CR)和换行(LF)表示(CRLF).当你从unix系统上传的git中获取代码时,他们只会有一个LF.
如果要关闭此警告,请在git命令行中键入此警告
git config core.autocrlf true
Run Code Online (Sandbox Code Playgroud)
如果你想做出明智的决定git应该如何处理这个问题,请阅读文档
这是一个片段
格式化和空白
格式化和空白问题是许多开发人员在协作时遇到的更令人沮丧和微妙的问题,尤其是跨平台问题.修补程序或其他协作工作很容易引入细微的空白更改,因为编辑器会默默地引入它们,如果您的文件曾经触及Windows系统,它们的行结尾可能会被替换.Git有一些配置选项来帮助解决这些问题.
Run Code Online (Sandbox Code Playgroud)core.autocrlf如果你在Windows上进行编程并与那些没有(或反之亦然)的人一起工作,那么你可能会在某些时候遇到行结束问题.这是因为Windows对其文件中的换行使用回车字符和换行符,而Mac和Linux系统仅使用换行符.这是跨平台工作的一个微妙但令人讨厌的事实; Windows上的许多编辑器默默地用CRLF替换现有的LF样式行结尾,或者在用户点击回车键时插入两个行结束字符.
当您将文件添加到索引时,Git可以通过将CRLF行结尾自动转换为LF来处理此问题,反之亦然,当它将代码签出到您的文件系统时.您可以使用core.autocrlf设置打开此功能.如果您使用的是Windows计算机,请将其设置为true - 这会在您签出代码时将LF结尾转换为CRLF:
Run Code Online (Sandbox Code Playgroud)$ git config --global core.autocrlf true如果您使用的是使用LF行结尾的Linux或Mac系统,那么您不希望Git在您签出文件时自动转换它们; 但是,如果意外引入了CRLF结尾的文件,那么您可能希望Git修复它.您可以告诉Git在提交时将CRLF转换为LF,但不能通过将core.autocrlf设置为输入来反转:
Run Code Online (Sandbox Code Playgroud)$ git config --global core.autocrlf input此设置应该在Windows签出中留下CRLF结尾,但在Mac和Linux系统以及存储库中的LF结尾.
如果您是Windows程序员,只执行Windows项目,则可以关闭此功能,通过将config值设置为false来记录存储库中的回车:
Run Code Online (Sandbox Code Playgroud)$ git config --global core.autocrlf false
SG *_* 86 340
如果需要,可以使用git core config取消激活此功能
git config core.autocrlf false
Run Code Online (Sandbox Code Playgroud)
但最好只使用它来消除警告
git config core.autocrlf true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
905029 次 |
| 最近记录: |