windows使用git时出现:warning: LF will be replaced by CRLF 以及使windows10支持区分大写小的问题处理

1.在使用命令提交代码时,发生了

warning: LF will be replaced by CRLF in node_modules/mime/mine.js.              
The file will have its original line endings in your working directory          

windows中的换行符为以CRLF结尾, 而在linux  vim编辑器下的换行符以LF结尾,

所以在执行add . 时出现提示,解决办法:

解决办法(一)

$ rm -rf .git  // 删除.git
$ git config --global core.autocrlf false  //禁用自动转换  
$ git init  
$ git add .

解决办法(二)

找到windows项目的.git目录,修改config文件,在 [core] 配置项添加一行即可。

autocrlf = false

2.同样是在  node_modules/mime/ 这个文件夹下,服务器上有mime.js和Mine.js两个文件,在下载代码到本地时,却提示

warning: the following paths have collided (e.g. case-sensitive paths           
on a case-insensitive filesystem) and only one from the same                    
colliding group is in the working tree:                                         
                                                                                
  'node_modules/mime/Mime.js'                                                   
  'node_modules/mime/mime.js'                                                             

查了一下, 由于 Windows 文件系统对大小写不敏感

解决办法

以管理员身份运行Windows PowerShell

执行命令

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

这个时候会提示是否重启,输入 “Y” 回车执行重启。

重启完以后,继续以管理员身份运行Windows PowerShell,开始设置目录区分大小写

比如出现问题的那个目录是  E:\project\node_modules/mime

那么执行命令

fsutil.exe file setCaseSensitiveInfo E:\project\node_modules\mime

只是需要注意的是,这样的解决办法只对当前目录有效,而对其子目录并无作用。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个报错是因为不同的操作系统使用不同的换行符。在 Windows 中,每行的结尾是由两个字符组成的:一个回车符(Carriage Return)和一个换行符(Line Feed),简称 CRLF。而在 Unix/Linux 和 macOS 中,每行的结尾只有一个换行符(Line Feed),简称 LF。 当你在 Windows使用 Git Git 会默认将换行符转换为 CRLF,以便与 Windows 系统兼容。但是如果你将代码提交到 Linux 或 macOS 系统上,就会出现类似的警告。 要解决这个问题,可以在提交代码前将 Git 的 core.autocrlf 设置为 false。具体步骤如下: 1. 打开 Git Bash 终端。 2. 输入以下命令: ```bash git config --global core.autocrlf false ``` 这会将 Git 的 core.autocrlf 设置为 false,即禁止自动将换行符转换为 CRLF。 3. 提交代码Git 将保留原来的换行符,不会进行转换。 另外,你也可以在设置中将 LF 转换为 CRLF,这样在 Windows 上就能正常显示换行符了。具体操作方法为: 1. 打开 Git Bash 终端。 2. 输入以下命令: ```bash git config --global core.autocrlf true ``` 这会将 Git 的 core.autocrlf 设置为 true,即将 LF 转换为 CRLF。 3. 提交代码Git 会自动将 LF 转换为 CRLF。 不过需要注意的是,你应该根据实际情况选择是否进行转换。如果你的代码主要运行在 Linux 或 macOS 系统上,建议将 core.autocrlf 设置为 false,以保留原有的换行符;如果你的代码主要运行在 Windows 上,建议将 core.autocrlf 设置为 true,以便在 Windows 中正常显示换行符。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值