git init
git add .
对许多文件给出以下警告:
该文件将在您的工作目录中保留其原始行结尾。
警告: 中的 LF 将被 CRLF 替换。
LF 和 CRLF 有什么区别?对于这些警告我该怎么办?
在 Unix 系统中,行尾用换行符 (LF) 表示。在 Windows 中,一行由回车符 (CR) 和换行符 (LF) 表示,即 (CRLF)。当你从 git 获取从 unix 系统上传的代码时,它们只会有一个 LF。
如果您是在 Windows 机器上工作的单个开发人员,并且您不关心 git 自动将 LF 替换为 CRLF,则可以通过在 git 命令行中键入以下内容来关闭此警告
git config core.autocrlf true
如果你想明智地决定 git 应该如何处理这个问题,阅读文档 http://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#Formatting-and-Whitespace
这是一个片段
格式和空白
格式和空白问题是一些更令人沮丧和
许多开发人员在协作时遇到的微妙问题,
尤其是跨平台。补丁或其他内容非常容易
合作引入了微妙的空白变化,因为
编辑们默默地介绍它们,如果你的文件曾经接触过
Windows系统,它们的行尾可能会被替换。 Git 有几个
配置选项可帮助解决这些问题。
core.autocrlf
如果您在 Windows 上编程并与非 Windows 上的人一起工作
(反之亦然),你可能会在某些地方遇到行结束问题
观点。这是因为 Windows 同时使用回车符
以及文件中换行符的换行符,而 Mac 和
Linux 系统仅使用换行符。这是一个微妙但
跨平台工作是令人难以置信的恼人事实;许多编辑
Windows 以静默方式将现有的 LF 样式行结尾替换为 CRLF,或者
当用户按下回车键时插入两个行结束字符。
Git 可以通过在以下情况下自动将 CRLF 行结尾转换为 LF 来处理此问题:
您将文件添加到索引,反之亦然,当它签出代码时
到你的文件系统上。您可以使用以下命令打开此功能
core.autocrlf 设置。如果您使用的是 Windows 计算机,请将其设置为 true
– 当您签出代码时,这会将 LF 结尾转换为 CRLF:
$ git config --global core.autocrlf true
如果您使用的是使用 LF 行结尾的 Linux 或 Mac 系统,那么您
不希望 Git 在您签出文件时自动转换它们;
但是,如果意外引入了以 CRLF 结尾的文件,
那么你可能需要 Git 来修复它。你可以告诉 Git 将 CRLF 转换为
提交时 LF,但不是相反,通过将 core.autocrlf 设置为
输入:
$ git config --global core.autocrlf input
此设置应该让您在 Windows 结账时保留 CRLF 结尾,
但在 Mac 和 Linux 系统以及存储库中以 LF 结尾。
如果您是一名 Windows 程序员,正在做一个仅限 Windows 的项目,那么您
可以关闭这个功能,将回车记录在
通过将配置值设置为 false 来存储库:
$ git config --global core.autocrlf false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)