zoukankan      html  css  js  c++  java
  • 错误 warning: LF will be replaced by CRLF in README.md.

    问题类型

    windows中的换行符为 CRLF, 而在Linux下的换行符为LF,所以在执行add . 时出现提示:warning: LF will be replaced by CRLF in README.md. The file will have its original line endings in ;

    $ git add .
    warning: LF will be replaced by CRLF in 工欲善其事,必先利其器/README.md.
    The file will have its original line endings in your working directory.
    warning: LF will be replaced by CRLF in 谁能九层台,不用累土起/README.md.
    The file will have its original line endings in your working directory.

    问题原因

    设置 core.autocrlf=true 后:检出时,git 会把文本文件的换行符转化为 CRLF(只转化纯 LF 的文件)提交时,把暂存区的内容(也就是我们对工作区做的改动)转化为 LF 然后放入版本库。转化暂存区的内容时,如果发现里面存在 LF 换行符,LF 会被转化成 CRLF,并给出题主提到的那条警告:”LF will be replaced by CRLF”这句警告的下面其实还有一句很重要的话:warning: LF will be replaced by CRLF in . 
    The file will have its original line endings in your working directory. 
    (翻译下就是:“在工作区里,这个文件会保持它原本的换行符。”) 

    简单来说,设置 core.autocrlf=true 后,我们工作区的文件都应该用CRLF 来换行。如果改动文件时引入了 LF,或者设置 core.autocrlf 之前,工作区已经有 LF 换行符。提交改动时,git 会警告你哪些文件不是纯 CRLF 文件,但 git 不会擅自修改工作区的那些文件,而是对暂存区(我们对工作区的改动)进行修改。

    最佳解决方案

    • 直接设置core.autocrlf=false; 

    除了记事本编辑不可以,其他都可以 

    git config -–global core.autocrlf false // 禁用自动转换
    
    git rm -rf cached ./ // 清除添加到缓存区的缓存
    
    git add .
    
    git commit -m "提交备注信息"
    
    git push origin master  // 推送到远程仓库

      

  • 相关阅读:
    Linux下软件安装方法即路径设置
    maven和jdk版本不匹配
    jobTracker 和taskTracker
    任务调度quartz
    springside3.1.8打包
    给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组
    二进制求和
    数组中找到目标值,并返回其索引
    加1问题
    给定字符串返回最后一个单词的长度
  • 原文地址:https://www.cnblogs.com/ryxiong-blog/p/11268952.html
Copyright © 2011-2022 走看看