首页 > 其他分享 >Git:warning: CALF wilL be replaced by LF in xxxx 问题解决

Git:warning: CALF wilL be replaced by LF in xxxx 问题解决

时间:2024-05-21 19:40:45浏览次数:20  
标签:LF core git xxxx 换行 Git CRLF 换行符

warning: CALF wilL be replaced by LF in xxxx 问题解决办法

出现这个问题的原因是像缓存区中提交文件时出现的

 

原因:

windows中的换行符为 CRLF,而在Linux下的换行符为LF,所以在执行add . 时出现提示

也就是,

工作区的文件都应该用 CRLF 来换行。如果 
改动文件时引入了 LF,提交改动时,git 会警告你哪些文件不是纯 CRLF 文件,但 git 不会擅自修改工作区的那些文件,而是对暂存区(我们对工作区的改动)进行修改。也因此,当我们进行 git add 的操作时,只要 git 发现改动的内容里有 LF 换行符,就还会出现这个警告。
 

git工作区默认为CRLF来作为换行符,所以当我们项目文件里有用的地方使用LF作为换行符,这个时候我们再继续git add 或则git commit的时候就会弹出警告,当最终push到远程仓库的时候git会统一格式全部转化为用CRLF作为换行符 

 

解决方式: 

情况一:

Git 可以在你提交时自动地把回车(CR)和换行(LF)转换成换行(LF),而在检出代码时把换行(LF)转换成回车(CR)和换行(LF)。 你可以用git config --global core.autocrlf true 来打开此项功能。 如果是在 Windows 系统上,把它设置成 true,这样在检出代码时,换行会被转换成回车和换行:

#提交时转换为LF,检出时转换为CRLF
$ git config --global core.autocrlf true

*适用于Windows系统,且一般为Windows默认设置,会在提交时对换行符进行CRLF - LF的转换,检出时又会进行LF - CRLF的转换。

 

情况二:

如果使用以换行(LF)作为行结束符的 Linux 或 Mac,你不需要 Git 在检出文件时进行自动的转换。然而当一个以回车(CR)和换行(LF)作为行结束符的文件不小心被引入时,你肯定想让 Git 修正。 所以,你可以把 core.autocrlf 设置成 input 来告诉 Git 在提交时把回车和换行转换成换行,检出时不转换:(这样在 Windows 上的检出文件中会保留回车和换行,而在 Mac 和 Linux 上,以及版本库中会保留换行。)

#提交时转换为LF,检出时不转换
$ git config --global core.autocrlf input

*适用于Linux系统,所有换行符都会进行CRLF - LF转换,但操作时不会转换回CRLF。

 

 

情况三:

如果你是 Windows 程序员,且正在开发仅运行在 Windows 上的项目,可以设置 false 取消此功能,把回车保留在版本库中:

#提交检出均不转换
$ git config --global core.autocrlf false

你也可以在文件提交时进行safecrlf检查

#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true   
 
#允许提交包含混合换行符的文件
git config --global core.safecrlf false   
 
#提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn

建议:遇到了这种问题可以直接忽略,对我们整体工作不会造成影响!

 

 

标签:LF,core,git,xxxx,换行,Git,CRLF,换行符
From: https://www.cnblogs.com/T8888/p/18204790

相关文章

  • git:Unable to negotiate问题解决
    场景说明:安装了Gitblit(自架的代码仓库服务)发现部分电脑无法推代码,报错误如下:Unabletonegotiatewith****port22:nomatchinghostkeytypefound.Theiroffer:ssh-rsa并排队了账户权限问题。解决方案:1.打开问题电脑的系统盘的当前登陆用户文件夹('C:\Users\你当前的......
  • 工程目录下.git目录过大文件清理
    1.查看当前5个大文件gitrev-list--objects--all|grep"$(gitverify-pack-v.git/objects/pack/*.idx|sort-k3-n|tail-5|awk'{print$1}')"2.一个一个将大文件从提交记录中移除gitfilter-branch--force--index-filter'gitrm-rf--cached--ignore-u......
  • Git提交规范中,常见的commit类型
    在Git提交规范中,常见的commit类型通常包括以下几种:feat:新功能(feature)用于描述新增加的功能。示例:feat:adduserloginfeaturefix:修补bug用于描述修复了一个bug。示例:fix:correctuserauthenticationdocs:文档(documentation)用于对文档的更改,比如README......
  • Github打不开解决办法(最新有效)
    Github打不开解决办法(最新有效)1. 先看没解决之前的截图: 2. 解决方法(手动修改DNS):2.1 以win11为例,第一步:打开设置-网络和Internet,找到高级网络设置,如下图所示:  2.2 第二步:找到WLAN(有线连接的话选择本地连接),点击查看其他属性,如下图所示: 2.3 第三步:在W......
  • 控制台+Topshelf实现Windows服务,以及打包
    场景:实现Windows服务,例如TerryService。1服务安装脚本serviceInstall.batcd/d%~dp0echo%date%_%time%>>InstallLog.txtTerryService.exeuninstall>>InstallLog.txtTerryService.exeinstall>>InstallLog.txtscconfigTerryServicetype=interacttype=......
  • 3 个好玩的前端开源项目「GitHub 热点速览」
    单休的周末总是短暂的,还没缓过神新的一周就又开始了。如果你和我一样状态还没有完全恢复,那就让上周好玩的开源项目唤醒你吧!每周GitHub上总是有一些让人眼前一亮的开源项目,上周好玩的前端项目特别多,比如这个3D地球的JavaScript组件Cesium,作为老牌地理信息可视化组件又一次......
  • MLOps 学习之旅「GitHub 热点速览」
    又是AI神仙打架的一周,上周OpenAI发布了最新的GPT-4o模型,而谷歌也紧跟着开源了Gemma2模型。随着AI大模型不断地变强,各大科技巨头正利用它们重塑自家的产品,这也让大模型算法工程师变得炙手可热,相关岗位需求正旺。对于普通程序员来说,想要转型成为大模型算法专家,可能会感......
  • 4、Git之分支操作
    4.1、分支的概述在版本控制过程中,当需要同时推进多个任务时,可以为每个任务创建的单独分支。虽然分支的底层实现是指针的引用,但是初学阶段可以将分支简单理解为副本,一个分支就是一个单独的副本。使用分支,意味着从原来的主干上分离开,在分支上做的任何改动,在合并前都不会影响到主......
  • 来玩 GitHub 啊,SSH 连接方式
    Windows11gitversion2.32.0.windows.2GitHub20240520-- 今天找回了自己的GitHub账号密码,继续玩吧,再次加入蓝星的开源软件基地。使用邮箱注册的,找回密码也很方便。 本文简要展示按照官方文档的介绍使用SSH连接GitHub的过程。简述为:创建SSH密钥对公钥注......
  • GitLab安装
    GitLab安装官方网站:https://about.gitlab.com/安装所需最小配置内存至少4G:https://docs.gitlab.cn/jh/install/requirements.html在ssh下安装官方安装文档:https://gitlab.cn/install/?version=ce1安装依赖sudoyuminstall-ycurlpolicycoreutils-pythonopenssh-server......