LF 将在 git 中被 CRLF 取代 - 那是什么,重要吗? [复制]

2024-04-17

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(使用前将#替换为@)

LF 将在 git 中被 CRLF 取代 - 那是什么,重要吗? [复制] 的相关文章

  • Visual Studio Code 内置故事,用于查看 git 提交历史记录并对其内容进行比较

    In this https stackoverflow com questions 37899765 how can i view the git history in visual studio code 60013101 noredir
  • 在 Web 应用程序中显示最新的提交值?

    我有一些 Rails 应用程序 我使用 Git 作为版本控制系统 我使用 GitHub 或 Beanstalk 作为存储库主机 从理论上讲 我想要做的事情非常简单 以某种方式在 Web 应用程序的页脚中显示最新的提交 ID 号 哈希值 这样
  • 致命:无法将 HEAD 解析为有效引用

    我正进入 状态fatal Failed to resolve HEAD as a valid ref 每当我尝试承诺时 我努力了 echo ref refs heads master gt git HEAD 但它不起作用 也尝试过 git
  • 如何将 GIT 调用的输出获取到批处理脚本中的变量中?

    我有一个 git 命令来获取当前存储库的最新 SHA 如下所示 git log pretty format H n 1 我有一个 Windows 批处理脚本 我想按如下方式使用它 SET CURRENT SHA 但我不知道如何将从 git
  • 我在哪里? *(无分支)

    我已经熟悉了创建 合并和删除分支 我想知道我在哪里 这样我就不会将工作提交到错误的分支 我用git branch a看看我有哪些分支 我认为星号 显示我当前所在的分支 当我得到以下信息时 这意味着什么 no branch master or
  • 无法使用 git 推送或获取 [重复]

    这个问题在这里已经有答案了 我可以拉 但无法使用 git 版本 1 9 5 推送或获取 它突然开始给我以下错误 关于如何修复它有什么想法吗 git fetch fatal unable to access https email prote
  • 我可以忽略全局 .gitignore 吗?

    我的全局 gitignore 一般都很棒 但对于这个一次性项目 我不希望应用全局规则 如何删除这个怪异存储库的全局 gitignore 规则 在您的存储库中运行此命令 git config local core excludesfile f
  • 执行 git Push 时出现“diff.renamelimit 变量”警告

    我将本地提交推送到远程 git 服务器并收到以下警告消息 remote warning only found copies from modified paths due to too many files remote warning y
  • 为什么“git描述-dirty”在描述干净结帐时添加“-dirty”后缀?

    我刚刚发现 dirty选项git describe看起来它应该做一些非常有用的事情 即在输出中附加一个后缀git describe当工作树脏时 但是在我的一些存储库上似乎并非如此 git status On branch 8 30 noth
  • 清理远程 Git 分支

    我已经将 SVN 存储库移至 Git 可能由于多次克隆 我现在只剩下一堆看起来像这样的分支 BranchA origin BranchA remotes BranchA remotes origin BranchA remotes orig
  • 为什么 git-svn 应该积极搜索旧历史?

    当我运行 git svn clone s 时发生了一些奇怪的事情 尽管以下信息告诉我们不要惊慌 但我想知道为什么会出现这种 svn 错误 为什么这个路径不存在 是被别人删除了吗 如果是 为什么 git svn 应该积极搜索旧历史记录 Ini
  • 将 Visual Studio 在线 Git 存储库集成到 Android Studio 1.0.2

    我正在使用 Visual Studio Online 进行开发过程 我想将我的 Android Studio 1 0 2 代码集成到其中 但是 据我所知 Android Studio 没有 TFS 插件 这就是为什么我想使用 Git 进行源
  • TortoiseGit - 更改默认合并消息

    系统描述 Windows 7的 git版本2 10 1 windows 1 乌龟Git 2 3 0 0 I want 合并提交消息在不同的情况下有所不同fully自动方式 no manual amend Summary 在windows上
  • 如何获取 git 存储库中所有文件的计数?

    如何获取 git 存储库中当前所有文件的计数 您可以使用以下命令获取 git 存储库中所有跟踪文件的计数 git ls files wc l 命令分解 The git ls files命令本身打印出存储库中所有跟踪文件的列表 每行一个 Th
  • GitPython 检查 git pull 是否更改了本地文件

    使用 GitPython 我只想在拉取后本地文件发生更改时才调用函数 例如 如果我在一台单独的计算机上进行推送 然后拉第一台计算机 它按预期工作 但不提供任何输出 理想的输出是已更改的文件列表 或者只是告诉我拉动是否有错误 没有拉动 因为分
  • 为什么cherry-pick 告诉我所有行都已更改?

    Updated 考虑文件 abc 在提交 A 和 B 中都相同 begin 123 456 789 klm end 在A中 我们重构第一行123 gt AAA并在结果之上选择 B Git 告诉我们all lines in the file
  • 如果您使用 CocoaPods,您的 .gitignore 中会包含什么内容?

    我从事 iOS 开发已经几个月了 刚刚了解到有前途的可可豆荚 http cocoapods org 用于依赖管理的库 我在个人项目上尝试过 添加了依赖项Kiwi https github com allending Kiwi到我的 Podf
  • Git 删除其他人从远程所做的最后提交

    所以 我的情况是 错误地 我已经授予某人对我的分支的承诺 现在 在我的本地 我已经进行了提交 当我尝试将其推送到远程时 它显示远程在前面 因为对方已经将他的代码推送到了这个分支并进行了多次提交 现在 我可以从远程删除这些提交而不将拉取到本地
  • Git:忽略版本控制文件

    gitignore 文件对于忽略一些我们不想控制的文件非常有用 不幸的是 当文件已处于版本控制之下时 它无法使用 例如 我的 gitignore 已添加到 git 中 文件可能与我的同事想要的不同 例如我想忽略 Vim 文件 每当我对此文件
  • 如何在现有裸存储库中创建引用日志信息

    您可能已经知道 默认情况下 git 不会为新的裸存储库启用引用日志更新 问题是 我有一个很长的历史存储库 但它是在我设置 logAllRefUpdates 标志之前创建的 现在我希望其他应用程序可以使用该信息 如何通过对现有存储库进行最少的

随机推荐

  • 如何更改 PostgreSQL 中的最大列宽?

    我有一个简单的 SQL 查询 它从一个表中选择几行 其中一列包含很长的字符串 我想设置最大列宽 以便更容易阅读 我无法通过 pset 访问环境变量 None
  • 测试 SQL 查询的最佳方法[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我遇到了一个问题 复杂的 SQL 查询总是出错 从本质上讲 这会导致向错误的客户发送邮件以及其他类似的 问题 大家对于创建这样的 SQL 查询有
  • 如何在 Jetpack Compose Pager 中处理多个 TextField 焦点?

    我有一个寻呼机 每个页面上都有一个 TextField 我正在做过渡animateScrollToPage 如何让每个页面上的 TextField 获得焦点 当我给予Modifier focusRequster 到文本字段并检查index
  • 可选链的动态类型与赋值不同

    可选的链接返回always一个可选值 为了反映可以对 nil 值调用可选链接的事实 可选链接调用的结果始终是可选值 即使您正在查询的属性 方法或下标返回非可选值 Swift 编程语言 https developer apple com li
  • QComboBox 是否可以显示与其列表中不同的值?

    在 Linux 上使用 Qt 5 9 我有一个带有多个标签的 QComboBox qc new QComboBox qc gt addItem tr Red qc gt addItem tr Green qc gt addItem tr B
  • 用新的 Dataframe 替换一行

    我正在寻找一种更优雅的方法来从字典的值替换另一个数据帧中的数据帧 这是我必须使用的数据类型的示例 d 1 name bob age 22 Data 4 name sam age 30 Data 2 name tom age 20 Data
  • getDownloadUrl 是付费操作吗?

    我想知道是否getDownloadUrl在 Firebase 存储 Google Cloud Storage 上 一种获取存储上文件的公共 URL 的方法 是付费操作 即使读完之后文档 https cloud google com stor
  • DrawingPanel中刷新图片扩展了JPanel

    我必须在软件底部加载一个小图标 只是有一个加载 确定 错误图标 正如 http www article kth se lindsey JavaCourse Book Part1 Java Chapter06 images html 上的建议
  • 如何在服务器模式下运行H2数据库?

    我需要从我的应用程序以服务器模式启动 H2 数据库 尝试过以下代码 server Server createTcpServer start 这是连接的属性 javabase jdbc url jdbc h2 tcp localhost 90
  • Jekyll - 如何在根目录中创建页面?

    我正在使用 Jekyll 创建页面 文档建议 Jekyll 可以选择在根目录中创建页面 或为新页面创建新目录 From http jekyllrb com docs pages http jekyllrb com docs pages 页面
  • Log4Net 在单独的配置文件中

    我需要为新项目配置 log4net 当我将所有信息保存在 App config 文件中时 一切都工作得很好 我想把log4net的配置放在一个单独的配置文件中 取App1 config 这是我的 app config 完美运行
  • 三个不同表的内连接

    我在 Oracle APEX 工作 我想从三个不同的表中生成报告 患者 病史 治疗 通过INNER JOIN 表格如下 患者 Par Id Pk Pat Name Pat Gender 历史记录 His Id Pk Pat id Fk Tr
  • 生成精灵时指南针添加前斜线

    我刚刚生成了一个带有指南针的精灵 但由于某种原因 它在生成的类 url 中添加了一个前导斜杠 是否可以覆盖这个或者我的 config rb 中有什么错误 谢谢你的帮助 Joe 配置 rb gt http path css dir sass
  • 从嵌套列表创建新列表并将字符串转换为浮点数

    很抱歉问了一个已经被问过一百遍的问题 我是 Python 新手 我找到的解决方案似乎都不能解决我的问题 我有一个来自名为糖尿病的 csv 文件的嵌套列表 我在文件中读取并用逗号分隔元素 如下所示 for line in open diabe
  • .NET 日期时间转字符串

    有没有一种简单的方法可以将 DateTime 对象转换为这样的字符串表示形式 2010 03 03 10 38 48 我不确定上面的格式是什么 但它与通过 ToLongTimeString 等获得的模式不同 这是字符串生成器的情况吗 像这样
  • pyfunc_0 的返回值是 double,但需要 float

    我目前正在尝试更好地了解 Tensorflows CustomLayer 功能 在实现这样的自定义层时 我遇到了以下错误 usr lib python3 dist packages skimage util dtype py 110 Use
  • 在 CSS Grid 中为网格间隙设置不同的长度

    我正在使用 CSS 网格创建布局 并且希望每行之间有不同的空间 我可以通过在每个元素上使用边距来很好地创建布局 但这种方式掩盖了代码的简单性 有什么网格技巧可以实现这一点吗 grid row gap似乎只采用一个值 该值用于所有行 我想要实
  • 为什么 C# 结构体方法不能返回对字段的引用,但非成员方法可以?

    以下是结构体实例方法尝试将只读引用返回到结构体实例字段的示例 struct Foo internal int x public ref readonly int MemberGetX gt ref x Error CS8170 Struct
  • 从不同的表中获取数据并在mvc4中的View Index中显示

    我有2张桌子Work table and Employee table 我要显示emp id from Work table以及相应的emp name from Employee table在索引视图中Employee table 我的模型
  • LF 将在 git 中被 CRLF 取代 - 那是什么,重要吗? [复制]

    这个问题在这里已经有答案了 git init git add 对许多文件给出以下警告 该文件将在您的工作目录中保留其原始行结尾 警告 中的 LF 将被 CRLF 替换 LF 和 CRLF 有什么区别 对于这些警告我该怎么办 在 Unix 系